Implementation and performance evaluation of a GPU particle-in-cell code
Dept. of Physics, Massachusetts Institute of Technology
Massachusetts Institute of Technology, 2012
@phdthesis{payne2012implementation,
title={Implementation and performance evaluation of a GPU particle-in-cell code},
author={Payne, Joshua Estes},
year={2012},
school={Massachusetts Institute of Technology}
}
In this thesis, I designed and implemented a particle-in-cell (PIC) code on a graphical processing unit (GPU) using NVIDA’s Compute Unified Architecture (CUDA). The massively parallel nature of computing on a GPU nessecitated the development of new methods for various steps of the PIC method. I investigated different algorithms and data structures used in the past for GPU PIC codes, as well as developed some of new ones. The results of this research and development were used to implement an efficient multi-GPU version of the 3D3v PIC code SCEPTIC3D. The performance of the SCEPTIC3DGPU code was evaluated and compared to that of the CPU version on two different systems. For test cases with a moderate number of particles per cell, the GPU version of the code was 71x faster than the system with a newer processor, and 160x faster than the older system. These results indicate that SCEPTIC3DCPU can run problems on a modest workstation that previously would have required a large cluster.
February 20, 2013 by hgpu