# Multi-GPU Acceleration of the iPIC3D Implicit Particle-in-Cell Code

**Authors:** Chaitanya Prasad Sishtla, Steven W. D. Chien, Vyacheslav Olshevsky,, Erwin Laure, Stefano Markidis

arXiv: 1904.03684 · 2019-06-27

## TL;DR

This paper details the porting and optimization of the iPIC3D particle-in-cell code for multi-GPU systems, achieving significant performance improvements and scalability for space plasma simulations.

## Contribution

It introduces a GPU implementation of iPIC3D's particle mover, enhancing performance and scalability on multiple GPUs, which was not previously supported.

## Key findings

- GPU version outperforms CPU by 5-10x
- Achieved strong scaling on two GPU clusters
- Optimizations include pinned memory and asynchronous prefetching

## Abstract

iPIC3D is a widely used massively parallel Particle-in-Cell code for the simulation of space plasmas. However, its current implementation does not support execution on multiple GPUs. In this paper, we describe the porting of iPIC3D particle mover to GPUs and the optimization steps to increase the performance and parallel scaling on multiple GPUs. We analyze the strong scaling of the mover on two GPU clusters and evaluate its performance and acceleration. The optimized GPU version which uses pinned memory and asynchronous data prefetching outperform their corresponding CPU versions by 5-10x on two different systems equipped with NVIDIA K80 and V100 GPUs.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1904.03684/full.md

## Figures

2 figures with captions in the complete paper: https://tomesphere.com/paper/1904.03684/full.md

## References

18 references — full list in the complete paper: https://tomesphere.com/paper/1904.03684/full.md

---
Source: https://tomesphere.com/paper/1904.03684