Ask any question about EPFL courses, lectures, exercises, research, news, etc. or try the example questions below.
DISCLAIMER: The Graph Chatbot is not programmed to provide explicit or categorical answers to your questions. Rather, it transforms your questions into API requests that are distributed across the various IT services officially administered by EPFL. Its purpose is solely to collect and recommend relevant references to content that you can explore to help you answer your questions.
We present the GPU porting of a Monte Carlo particle-following code, called ASCOT5. The code solves the distribution function of minority species in fusion plasmas. Originally developed with an MPI-OpenMP hybrid parallelism taking full advantage of SIMD operations, the code has been ported to GPU architecture using the OpenACC programming model. Subsequently, modifications were made to implement three distinct algorithmic strategies: "history-based," "event-based," and "event-based-packing." In the first implementation, each GPU processing unit deals with the entire history of one or more particles, while the event-based algorithm operates on the principle of executing a single low-level event type at a time for all particles still alive (with or without packing particles). Performance results on NVIDIA GPUs are presented to showcase the effectiveness and efficiency of the code adaptations for GPU execution. These results provide insights into the comparative performance of the implemented approaches on the specified hardware architecture. portability across other architectures such as INTEL and AMD GPUs with OpenMP Offload is also presented.