Storms of High-Energy Particles: An assignment for OpenMP, MPI, and CUDA/OpenCL
Authors: Arturo Gonzalez-Escribano (University of Valladolid)
Abstract: We present an assignment used in a Parallel Computing course to teach the approaches to the same problem in different parallel programming models. It targets basic concepts of shared-memory programming with OpenMP, distributed-memory programming with MPI, and GPU programming with CUDA or OpenCL. This assignment is based on a highly simplified simulation of the impact of high-energy particle storms in an exposed surface. The idea is inspired by simulations to test the robustness of space-vessels material. The program is designed from scratch to be simply, easy to understand by students, and to include specific parallel structures and optimization opportunities. A simple parallelization in the three models considered is quite direct. But the program is plenty of opportunities for further improvements, optimizations, and more sophisticated techniques usage. It has been successfully used in parallel programming contests during our course, using the performance obtained by the students code as a measure of success.
Back to Workshop on Education for High Performance Computing (EduHPC) Archive Listing
Back to Full Workshop Archive Listing