The naive approach and the linked cell method are two approaches for computing short-range interactions such as the Lennard-Jones potential in the domain of MD simulations. In order to compute the interaction between particle pairs, it is necessary to parallelize the computations. Therefore, the usage of tools such as OpenMP or CUDA are quite useful for parallel executions of applications. However, each toolkit provides its own directives and requires the re-implementation of algorithms for each target platform.
This thesis describes the usage of the library Kokkos in the AutoPas project 1 from the chair of scientific computing at the Techncal University of Munich and compares it to already existing implementations in OpenMP. Kokkos is a programing model in C++ developed by the Sandia National Laboratory and focuses on the deployment of portable performance applications to all major HPC platforms. Kokkos provides its own data management and directives for parallelized execution which are modified during compile time and ptimized for the specific target platform. Kokkos currently offers implementations for OpenMP, Pthreads and CUDA. AutoPas is an application which consists of many different configurations of traversal methods and other options, the goal is to select the most efficient configuration to calculate a given simulation consisting of particles.
Two different implementation strategies of Kokkos are tested with the execution platform OpenMP in AutoPas with several different configurations on the CoolMUC2, a linux cluster based on the Haswell architecture at the LRZ, and compared to an already existing application using OpenMP.
In the detailed analysis of the results, it is shown which weaknesses each Kokkos imple-mentation has and how good the parallelization of the N-body algorithms work in practice.
The performance is highly dependent on the chosen configuration, but there are cases in which Kokkos can compete with the native OpenMP implementation.
«
The naive approach and the linked cell method are two approaches for computing short-range interactions such as the Lennard-Jones potential in the domain of MD simulations. In order to compute the interaction between particle pairs, it is necessary to parallelize the computations. Therefore, the usage of tools such as OpenMP or CUDA are quite useful for parallel executions of applications. However, each toolkit provides its own directives and requires the re-implementation of algorithms for each...
»