Solis Vasquez, Leonardo (2019)
Accelerating Molecular Docking by Parallelized Heterogeneous Computing - A Case Study of Performance, Quality of Results, and Energy-Efficiency using CPUs, GPUs, and FPGAs.
Technische Universität Darmstadt
doi: 10.25534/tuprints-00009288
Ph.D. Thesis, Primary publication
|
Text
(PDF)
20191130_phdthesis_lsv.pdf - Accepted Version Copyright Information: CC BY-SA 4.0 International - Creative Commons, Attribution ShareAlike. Download (1MB) | Preview |
Item Type: | Ph.D. Thesis | ||||
---|---|---|---|---|---|
Type of entry: | Primary publication | ||||
Title: | Accelerating Molecular Docking by Parallelized Heterogeneous Computing - A Case Study of Performance, Quality of Results, and Energy-Efficiency using CPUs, GPUs, and FPGAs | ||||
Language: | English | ||||
Referees: | Koch, Prof. Dr. Andreas ; Plessl, Prof. Dr. Christian | ||||
Date: | 30 November 2019 | ||||
Place of Publication: | Darmstadt | ||||
Date of oral examination: | 14 October 2019 | ||||
DOI: | 10.25534/tuprints-00009288 | ||||
Abstract: | Molecular Docking (MD) is a key tool in computer-aided drug design that aims to predict the binding pose between a small molecule and a macromolecular target. At its core, MD calculates the strength of possible binding poses, and searches for the energetically-stronger ones among those generated during simulation. Automatic Docking (AutoDock) is a widely-used MD code that employs a physics-based scoring function to quantify the binding strength. AutoDock also uses a Lamarckian Genetic Algorithm (LGA), and in turn, the Solis-Wets method, as a local-search algorithm, in order to find strong interactions of such molecular systems. Due to the highly-parallel nature of the LGA tasks involved, AutoDock can benefit from runtime acceleration based on parallelization. This thesis presents an OpenCL-based parallelization of AutoDock, and a corresponding evaluation in terms of execution performance, quality-of-results, and compute-energy efficiency, achieved on different platforms based on: multi-core Central Processing Unit (CPU)s, Graphics Processing Unit (GPU)s, and Field Programmable Gate Array (FPGA)s. While a data-parallel approach has proven its effectiveness in accelerating AutoDock on CPUs and GPUs, it was observed that for FPGAs, such approach resulted in slower executions in the range of three-orders of magnitude when compared against the original single-threaded AutoDock. To overcome this drawback, a task-parallel implementation for FPGAs is discussed as well. Besides presenting an AutoDock implementation being parallelized using OpenCL, this thesis also extends the LGA search with new alternative local-search methods based on gradients (of the scoring function) such as: Steepest-Descent, FIRE, and ADADELTA. Among these, it was found that ADADELTA provides significant algorithmic benefits over Solis-Wets, yielding a reduction in calculation effort down to 1/1300 of the legacy Solis-Wets method, while achieving equivalent quality-of-results. Compared to the original single-threaded AutoDock, the proposed data-parallel design achieves a speedup of up to ∼399x and improves the compute-energy efficiency by up to ∼297x when running on modern V100 GPUs. Furthermore, this thesis describes the adaptations performed on the proposed OpenCL-based implementation for supporting challenging real-world MD scenarios. |
||||
Alternative Abstract: |
|
||||
URN: | urn:nbn:de:tuda-tuprints-92886 | ||||
Classification DDC: | 000 Generalities, computers, information > 004 Computer science 500 Science and mathematics > 540 Chemistry 600 Technology, medicine, applied sciences > 620 Engineering and machine engineering |
||||
Divisions: | 20 Department of Computer Science > Embedded Systems and Applications | ||||
Date Deposited: | 04 Dec 2019 15:20 | ||||
Last Modified: | 09 Jul 2020 02:50 | ||||
URI: | https://tuprints.ulb.tu-darmstadt.de/id/eprint/9288 | ||||
PPN: | 456454837 | ||||
Export: |
View Item |