Fine-sorting One-dimensional Particle-In-Cell Algorithm with Monte-Carlo Collisions on a Graphics Processing Unit
Institute for Electrical Engineering and Plasma Technology, Ruhr-Universitat Bochum, Universitatsstr. 150, 44801 Bochum, Germany
arXiv:1104.3998 [physics.plasm-ph] (20 Apr 2011)
@article{2011arXiv1104.3998M,
author={Mertmann}, P. and {Eremin}, D. and {Mussenbrock}, T. and {Brinkmann}, R.~P. and {Awakowicz}, P.},
title={“{Fine-sorting One-dimensional Particle-In-Cell Algorithm with Monte-Carlo Collisions on a Graphics Processing Unit}”},
journal={ArXiv e-prints},
archivePrefix={“arXiv”},
eprint={1104.3998},
primaryClass={“physics.plasm-ph”},
keywords={Physics – Plasma Physics, Physics – Computational Physics},
year={2011},
month={apr},
adsurl={http://adsabs.harvard.edu/abs/2011arXiv1104.3998M},
adsnote={Provided by the SAO/NASA Astrophysics Data System}
}
Particle-in-cell (PIC) simulations with Monte-Carlo collisions are used in plasma science to explore a variety of kinetic effects. One major problem is the long run-time of such simulations. Even on modern computer systems, PIC codes take a considerable amount of time for convergence. Most of the computations can be massively parallelized, since particles behave independently of each other within one time step. Current graphics processing units (GPUs) offer an attractive means for execution of the parallelized code. In this contribution we show a one-dimensional PIC code running on Nvidia GPUs using the CUDA environment. A distinctive feature of the code is that size of the cells that the code uses to sort the particles with respect to their coordinates is comparable to size of the grid cells used for discretization of the electric field. Hence, we call the corresponding algorithm “fine-sorting”. Implementation details and optimization of the code are discussed and the speed-up compared to classical CPU approaches is computed.
April 21, 2011 by hgpu