Experiences Migrating CUDA to SYCL: A Molecular Docking Case Study
Technical University of Darmstadt, Darmstadt, Germany
International Workshop on OpenCL (IWOCL ’23), 2023
@inproceedings{solis2023experiences,
title={Experiences Migrating CUDA to SYCL: A Molecular Docking Case Study},
author={Solis-Vasquez, Leonardo and Mascarenhas, Edward and Koch, Andreas},
booktitle={Proceedings of the 2023 International Workshop on OpenCL},
pages={1–11},
year={2023}
}
In recent years, Intel introduced oneAPI as a unified and cross-architecture programming model based on the Data Parallel C++ (DPC++) language, which in turn, is based on the C++ and SYCL standard languages. In order to facilitate the migration of legacy CUDA code originally written for NVIDIA GPUs, developers can employ the Intel DPC++ Compatibility Tool, which aims to automatically migrate code from CUDA to SYCL. While this tool-assisted code migration is a good starting point for leveraging the Intel oneAPI ecosystem, manual steps for code completion and tuning are still required. In this paper, we present our experiences migrating AutoDock-GPU, a widely-used molecular docking application, from CUDA to SYCL. Our discussion focuses on: (1) the use of this automated source-code migration tool, (2) the required manual code refinement for functionality and optimization, and (3) the comparison of the performance achieved in this manner on multi-core CPUs as well as on high-end GPUs, such as NVIDIA A100 and the recently-launched Intel Data Center Max 1550 device.
May 28, 2023 by hgpu