Design, parallelization and acceleration of algorithms to discover three-dimensional patterns in proteins
(English) The rapid growth of protein structure databases, such as the Protein Data Bank (over 230,000 structures) and AlphaFold (over 200 million structures), requires efficient and scalable algorithms capable of exploiting high-performance computing (HPC) architectures to enable large-scale struct...
| Autor: | |
|---|---|
| Tipo de recurso: | tesis doctoral |
| Fecha de publicación: | 2026 |
| País: | España |
| Institución: | Universitat Politècnica de Catalunya (UPC) |
| Repositorio: | UPCommons. Portal del coneixement obert de la UPC |
| Idioma: | inglés |
| OAI Identifier: | oai:dnet:upcommonspor::62b952678d65f6eae9103d40273fe853 |
| Acceso en línea: | https://hdl.handle.net/2117/460438 https://dx.doi.org/10.5821/dissertation-2117-460438 |
| Access Level: | acceso abierto |
| Palabra clave: | Discovering 3D-protein patterns OpenMPHybrid MPI+OpenMPCUDA 004 - Informàtica 577 - Bioquímica. Biologia molecular. Biofísica Àrees temàtiques de la UPC::Informàtica |
| Sumario: | (English) The rapid growth of protein structure databases, such as the Protein Data Bank (over 230,000 structures) and AlphaFold (over 200 million structures), requires efficient and scalable algorithms capable of exploiting high-performance computing (HPC) architectures to enable large-scale structural analysis in reasonable times. This thesis focuses on the design and implementation of optimized and parallel algorithms for discovering, analyzing, and clustering conserved three-dimensional amino acid patterns in proteins. The work focuses on the Geomfinder algorithm (A multi-feature identifier of similar three-dimensional protein patterns: a ligand-independent approach), which compares three-dimensional patterns between pairs of proteins, and the novel 3D-PP algorithm (A tool for discovering conserved three-dimensional protein patterns), proposed in this thesis, which discovers and clusters common three-dimensional patterns within protein sets. Both algorithms are ligand and sequence independent and do not require predefined patterns, enabling the identification of previously unknown functional sites. However, their original sequential implementations limit their applicability to large datasets. For Geomfinder, several sequential optimizations were introduced to reduce algorithmic complexity and long-latency operations. The incorporation of a Merge Join–based strategy reduced partial scoring complexity from O(N×M) to O(N+M), ensuring each descriptor element is evaluated only once. Lazy evaluation and reordering of partial scoring function calls further reduced execution time. These optimizations achieved speedups ranging from 6.2x to 19.7x, depending on the search range. Multiple parallelization strategies were then explored, including OpenMP, MPI, hybrid MPI+OpenMP, and CUDA. OpenMP with fine-grained data decomposition and optimized scheduling achieved near-ideal speedups, reaching 32.6x with 64 threads. MPI-based distributed parallelization achieved up to 19.4x speedup with 64 processes, while hybrid MPI+OpenMP further improved performance, reaching 67.4x using 1,024 threads. GPU acceleration using CUDA provided speedups of up to 8.6x, with performance increasing for larger workloads. After applying the algorithmic optimizations to the original sequential version, profiling revealed a change in the computational bottleneck, and an additional OpenMP parallelization stage was applied, achieving up to 494x acceleration over the original sequential version. In one case study, the runtime was reduced from over one hour to approximately 3.4 seconds. For the 3D-PP algorithm, profiling revealed that over 96% of execution time was spent processing protein chains. All major components were parallelized. Three OpenMP approaches were evaluated, with the best solution based on explicit and nested tasks, achieving a 22.3x speedup and reducing execution time from 1.25 hours to 201.5 seconds. Distributed-memory strategies using MPI focused on minimizing communication through early pattern reduction, achieving speedups of approximately 32x with 64 processes. Hybrid MPI+OpenMP implementations further improved performance, with the best approach achieving a 162.5x speedup and reducing runtime to 27 seconds. This hybrid approach mitigated synchronization overhead inherent to pure OpenMP implementations and demonstrated weak-scaling efficiency (90-100%) up to 8 processes, although efficiency dropped to around 72% when using 16 processes due to increased load imbalance and synchronization costs. The results show that explicit task parallelism and early data reduction substantially improve the performance and scalability of 3D-PP. All these improvements will help us address processing and pattern discovery in larger protein databases. |
|---|