Towards High-Performance and Portable Molecular Docking on CPUs through Vectorization
By: Gianmarco Accordi , Jens Domke , Theresa Pollinger and more
Potential Business Impact:
Makes computer programs run faster on different chips.
Recent trends in the HPC field have introduced new CPU architectures with improved vectorization capabilities that require optimization to achieve peak performance and thus pose challenges for performance portability. The deployment of high-performing scientific applications for CPUs requires adapting the codebase and optimizing for performance. Evaluating these applications provides insights into the complex interactions between code, compilers, and hardware. We evaluate compiler auto-vectorization and explicit vectorization to achieve performance portability across modern CPUs with long vectors. We select a molecular docking application as a case study, as it represents computational patterns commonly found across HPC workloads. We report insights into the technical challenges, architectural trends, and optimization strategies relevant to the future development of scientific applications for HPC. Our results show which code transformations enable portable auto-vectorization, reaching performance similar to explicit vectorization. Experimental data confirms that x86 CPUs typically achieve higher execution performance than ARM CPUs, primarily due to their wider vectorization units. However, ARM architectures demonstrate competitive energy consumption and cost-effectiveness.
Similar Papers
LAMMPS-KOKKOS: Performance Portable Molecular Dynamics Across Exascale Architectures
Distributed, Parallel, and Cluster Computing
Makes computer simulations run much faster.
Parallelizing Drug Discovery: HPC Pipelines for Alzheimer's Molecular Docking and Simulation
Distributed, Parallel, and Cluster Computing
Finds new medicines for brain diseases faster.
Tuning of Vectorization Parameters for Molecular Dynamics Simulations in AutoPas
Distributed, Parallel, and Cluster Computing
Speeds up computer simulations of tiny particles.