کد مقاله | کد نشریه | سال انتشار | مقاله انگلیسی | نسخه تمام متن |
---|---|---|---|---|
524058 | 868549 | 2013 | 18 صفحه PDF | دانلود رایگان |

Hybrid particle–mesh methods provide a versatile framework for simulating discrete and continuous systems. A key component is the forward and backward interpolation of particle data to mesh nodes. These interpolations typically account for a significant portion of the computational cost of a simulation. Due to its regular compute structure, interpolation admits SIMD parallelism, and several GPU-accelerated implementations have been presented in the literature. We build on these works to develop a streaming-parallel algorithm for interpolation in hybrid particle–mesh methods that works in both 2D and 3D and is free of assumptions about the particle density, the number of particle properties to be interpolated, and the particle indexing scheme. We provide a portable OpenCL implementation of the algorithm and benchmark its accuracy and performance. We show that with such a generic algorithm speedups of up to 15× over an 8-core multi-thread CPU implementation are possible if the data are already available on the GPU. The maximum speedup reduces to about 7× if the data first have to be transferred to the GPU. The benchmarks also expose several limitations of GPU acceleration, in particular for low-order and 2D interpolation schemes. The present algorithm is integrated and available in the open-source Parallel Particle Mesh (PPM) library as a hybrid MPI-OpenCL implementation.
► Hybrid particle–mesh methods provide a versatile and unifying simulation framework.
► A large part of their computational cost comes from interpolations.
► We provide an OpenCL implementation for GPU-accelerated interpolation in 2D and 3D.
► The new implementation is included in the MPI-parallel PPM library.
► We demonstrate its performance and compare it to specialized codes.
Journal: Parallel Computing - Volume 39, Issue 2, February 2013, Pages 94–111