Explore new features and tools within Intel® products, communities, and platforms
83 Discussions

AutoDock-GPU: SYCL Enabled Molecular Screening for Science and Medicine

1 0 3,173

Molecular Pose Space and Docking Analysis without GPU Vendor-Lock

In the third blog of our series on projects that have been ported to SYCL, we would like to focus on the contributions of the Embedded Systems and Applications Group, part of the Computer Science Department at Technical University Darmstadt (TU Darmstadt), to the oneAPI Centers of Excellence.

Prof. Andreas Koch, Dr. Leonardo Solis-Vasquez, and their research team are focused on accelerating data-parallel computing and simulation software used in medical and pharmaceutical research, powered by oneAPI open cross-architecture programming. Specifically, they have been working on enabling an accelerated version of the AutoDock* application to leverage SYCL, creating a single codebase that can be efficiently optimized and tuned for multiple hardware architecture targets.

AutoDock and AutoDock-GPU are used for simulating molecular interactions at close distances, aiming to predict how two molecules can best align to form possible bonds.  These predictions are an important initial step for the discovery of new drugs, as the computations can be performed much more quickly than traditional lab experiments. The highly compute-intensive and iterative nature of the calculations involved in these simulations makes them an ideal candidate for the introduction of data parallelism and GPU offload.

Its applicability to a considerable range of research, path-finding, and real-world applications, also speaks for the benefit that having AutoDock available for a variety of heterogeneous hardware platform configurations, including general compute multicore processors (CPUs) and graphics processors (GPUs).

At the 11th International Workshop on OpenCL and SYCL in Cambridge, United Kingdom, in the spring of 2023, Andreas Koch, Leonardo Solis-Vasquez, and Edward Mascarenhas presented a detailed report of their experience migrating AutoDock-GPU from CUDA* to SYCL.


The results they presented are very insightful. We strongly encourage you to take the time to read the case study, which is part of the conference proceedings, in full:

 Experiences Migrating CUDA to SYCL: A Molecular Docking Case Study

L Solis-Vasquez, E Mascarenhas, A Koch

IWOCL '23: Proceedings of the 2023 International Workshop on OpenCL and SYCL,

April 2023, Article No.: 15, Pages 1-11, ISBN 979-8-4007-0745-2  


The Importance of AutoDock

As mentioned in the introduction to this blog, molecular docking simulation provides a central ingredient to the art of computer-aided drug design and understanding the interaction between molecules in close proximity. It does this by using the knowledge of a molecule’s three-dimensional structure to predict spatial configurations that form strong bonds between two molecules. AutoDock models these docking processes between small and large molecules to form new compound molecules.

This modeling can be used to create new biochemical properties and predict the interaction of biological targets (i.e., viruses) with connectors of medication or vaccines.

It explores the ideal spatial configuration and interaction, the pose space analysis of molecules through a systematic search consisting of multiple irregular nested loops with variable upper bounds. This is a very compute-intensive process. The search is continuously adjusted, driven by a parameter that quantifies the strength of the forces defining the molecular interaction.

The Experiences Migrating CUDA to SYCL: A Molecular Docking Case Study goes into more detail on the computational Lamarckian Genetic Algorithm (LGA) at the core of this search engine. Reading it, you will get more insights into the fascinating challenge enabling the parallel execution of this application presents.

The requirement to make this process faster and more efficient motivated the development of AutoDock-GPU and the introduction of parallelism to this type of workload. This application’s challenging execution flow and importance for science and medicine is also the reason why Technical University Darmstadt joined the oneAPI Centers of Excellence to work together with Edward Mascarenhas at Intel and port AutoDock-GPU to support SYCL and thus free this code-base from lock to a specific GPU vendor and allow it to take advantage of a variety  of CPUs and GPUs.


The AutoDock SYCL Migration

In their published work, they took a close look at running the code base on Intel® Data Center Max 1550 GPU (code-named Ponte Vecchio) in addition to the 4th Gen Intel® Xeon Scalable Processor and NVIDIA* GPU and assessing performance characteristics across these platforms.

Andreas Koch and Leonardo Solis-Vasquez took advantage of the Intel® DPC++ Compatibility Tool for the initial code migration and subsequent migrated code fine-tuning. The case study provides a detailed process reference for migrating even the most challenging workloads, bringing them to use oneAPI with SYCL, a natural open-standards-based scalable parallel execution framework extension to ISO C++.

It even touches on more intricate migration issues like managing offload kernel group and subgroup sizes and converting inline NVIDIA PTX assembly code into SYCL-compliant calls.

Using oneAPI, the new AutoDock-GPU implementation can even be used for execution on the exascale Aurora* supercomputer at Argonne National Laboratory in Illinois (USA. Combining an improved AutoDock-GPU with that much compute power will provide deeper insights to address the urgent medical and pharmaceutical research needs.


Have a Look at the SYCL Enabled AutoDock GPU Codebase:  


Bringing Choice to Accelerated Compute

Become part of the effort to make high-performance cross-architecture compute transparent, portable, and flexible. Include SYCL as the accelerator and GPU offload solution in your code path. Adopt oneAPI as the means to implementations free from vendor lock.

Get started with SYCL-Enabled AutoDock-GPU and the Intel® DPC++ Compatibility Tool.

Make it part of your software solution.

Please stay tuned for next week’s oneAPI project focus.

SYCL Resources

AutoDock Resources


Notices and Disclaimers

Performance varies by use, configuration, and other factors. Learn more at Results may vary.

Performance results are based on testing as of dates shown in configurations and may not reflect all publicly available updates. No product or component can be absolutely secure.

Your costs and results may vary.

Intel technologies may require enabled hardware, software or service activation.

Intel does not control or audit third-party data. You should consult other sources to evaluate accuracy.

© Intel Corporation. Intel, the Intel logo, and other Intel marks are trademarks of Intel Corporation or its subsidiaries.

*Other names and brands may be claimed as the property of others.


About the Author
Rob enables developers to streamline programming efforts across multiarchitecture compute devices for high performance applications taking advantage of Intel's family of development tools. He has extensive 20+ years of experience in technical consulting, software architecture and platform engineering working in IoT, edge, embedded software and hardware developer enabling.