Application porting to AMD GPU accelerators
In the rapidly advancing field of high-performance computing, adapting and optimizing code for diverse GPU architectures has become increasingly vital. Leveraging the power of AMD GPUs, among other technologies, is crucial for researchers and developers aiming to enhance performance and efficiency in their applications. Understanding how to effectively port code to these GPUs, along with other architectures, is essential for maximizing computational benefits and remaining competitive in a fast-evolving technological landscape.
The need for specialized training in code porting to various GPU architectures, including AMD, arises from the complex nature of modern computing systems. Transitioning code from traditional CPU-based systems to GPUs involves a deep understanding of both the hardware and software aspects of the new architecture. Effective porting not only requires adapting code to work efficiently on these GPUs but also optimizing performance to fully leverage the capabilities of advanced systems.
To address this need, the Experimental Technologies Platform supported workshops designed to provide comprehensive training on code porting to different GPU architectures, including AMD GPUs. These workshops aimed to equip participants with the necessary skills and knowledge to adapt their applications to various GPU technologies. Through these sessions, participants gained hands-on experience, received expert guidance, and engaged in collaborative problem-solving, thereby enhancing their ability to work effectively with a range of GPU technologies.
ETP contribution
We successfully scheduled a PRACE course to take place from December 15th to December 17th, 2020. The course was designed to provide participants with in-depth training on advanced computational techniques and GPU architectures. The agenda included contributions from various experts, including those from the e-Science Center, who provided valuable insights and guidance. The workshop featured practical examples of scaling large applications using OpenACC and CUDA, offering participants hands-on experience with these powerful tools.
For the 2022 workshop, which was set for June 8th and 9th, we prepared by installing hipify-clang on the Experimental Technologies Platform (ETP). This preparation was part of our support for the AMD GPU segment of the workshop, aimed at equipping participants with the skills needed to adapt and optimize their code for AMD GPUs, among other technologies.
References
- Repository of the training: https://github.com/sara-nl/PRACE-GPU-Portability/tree/main.
- PRACE Event 2022: https://events.prace-ri.eu/event/1466/.
- PRACE Event 2020: https://dev.tess.elixir-europe.org/events/online-porting-of-codes-for-next-generation-gpu-architectures-surf.