Skip to content
Snippets Groups Projects
Commit 535a73d5 authored by Uwe Jandt (DESY, HIFIS)'s avatar Uwe Jandt (DESY, HIFIS)
Browse files

Merge branch 'final-update-PIConGPU' into 'master'

Finalize Update on PIConGPU Software Spotlight

See merge request !374
parents 20058e87 6637d982
No related branches found
No related tags found
1 merge request!374Finalize Update on PIConGPU Software Spotlight
......@@ -8,9 +8,10 @@ excerpt: PIConGPU is a relativistic Particle-in-Cell code running on graphic pro
# Title for individual page
title_image:
title: PIConGPU - A Many-GPGPU Particle-in-Cell Code
title: PIConGPU - A Heteregeneous Particle-in-Cell Code
keywords:
- GPU
- CPU
- Particle-in-Cell
- Simulation
hgf_research_field: Matter
......@@ -47,11 +48,11 @@ funding:
[PIConGPU](https://github.com/ComputationalRadiationPhysics/picongpu) is an extremely scalable and platform portable application for particle-in-cell simulations. While we mainly use it for studying laser-plasma interactions, it has also been used for astrophysics studies of the Kelvin-Helmholtz-instability.
PIConGPU has been a finalist for the prestigious Gordon-Bell-Award in 2013 and has been one of the flagship applications for a number of leading edge high performance computing (HPC) systems since then ([Titan](https://www.olcf.ornl.gov/2018/07/17/titan-helps-scientists-fine-tune-laser-interactions-to-advance-cancer-treatments/), [JUWELS Booster](https://www.fz-juelich.de/portal/EN/Research/ITBrain/Supercomputer/early_access_app/tb_picongpu.html?nn=2692138), [Frontier1](https://www.amd.com/system/files/documents/ornl-picongpu-team-aims-amd-instinct-gpus-at-laser-particle-accelerator-development.pdf), [Frontier2](https://www.olcf.ornl.gov/2021/01/12/university-of-delaware-team-tightens-up-code-for-exascale-computing-on-frontier/), [Frontier3](https://ascr-discovery.org/2021/12/shrinking-big-physics/)).
Through this work the PIConGPU has established strong ties with a lot of national and international partners, especially the underlying hardware agnostic libraries like [Alpaka](https://github.com/alpaka-group/alpaka) and [Llama](https://github.com/alpaka-group/llama) are now adopted in the CERN LHC software stack as well. Another collaborative effort also driven by PIConGPU is a standardization in data formats for plasma physics via [openPMD](https://github.com/openPMD/), which is becoming one of the leading data standard in the community.
Through this work, PIConGPU has established strong ties with a lot of national and international partners, especially the underlying hardware agnostic libraries like [Alpaka](https://github.com/alpaka-group/alpaka) and [Llama](https://github.com/alpaka-group/llama) are now adopted in the CERN LHC software stack as well. Another collaborative effort also driven by PIConGPU is a standardization in data formats for plasma physics via [openPMD](https://github.com/openPMD/), which is becoming one of the leading data standards in the community.
<div class="spotlights-text-image">
<img src="{{ site.directory.images | relative_url}}spotlights/picongpu/LWFAVectorFieldVisTest.jpg" alt="A snapshot from a test simulation of an ultrashort, high-intensity laser pulse.">
<span>A snapshot from a test simulation of an ultrashort, high-intensity laser pulse (orange-striped sphere) driving a plasma wave in ionized helium gas on the Oak Ridge Leadership Computing Facility’s (OLCF) Summit supercomputer. Purple areas highlight the electron density. Streams depict the stronger (red) and weaker (green and blue) electric fields. See also
<span>A snapshot from a simulation of an ultrashort, high-intensity laser pulse (orange-striped sphere) driving a plasma wave in ionized helium gas on the Oak Ridge Leadership Computing Facility’s (OLCF) Summit supercomputer. Purple areas highlight the electron density. Streams depict the stronger (red) and weaker (green and blue) electric fields. See also
<a href="https://www.youtube.com/watch?v=yPq22Lz_kb8"><i class="fas fa-external-link-alt"></i> video on this</a>
(<i>Link to Youtube</i>).
<i>This image was generated using ISAAC, a tool for visualizing simulations in real time on the Frontier supercomputer being built at OLCF. Image Courtesy of Felix Meyer/Helmholtz-Zentrum Dresden-Rossendorf.</i></span>
......@@ -61,13 +62,14 @@ Through this work the PIConGPU has established strong ties with a lot of nationa
* Open source, fully relativistic, 3D3V, many-core, performance portable Particle-in-cell code with a single code base.
* A variable, Yee-like grid, on which electric and magnetic fields are approximated.
* Particle-pushers following the works of Boris and Vay
* Particle-pushers following the works of Boris, Vay, and Higuera
* Maxwell-solvers as proposed by Yee and Lehe, as well as an arbitrary-order FDTD field solver
* Current-deposition schemes according to Esirkepov, Villasenor-Buneman and ZigZag
* Macro particle shape orders: NGP (0th) to P4S (4th)
* Current-deposition schemes according to Esirkepov, Villasenor-Buneman, EZ and ZigZag
* Macro particle shape orders: NGP (0th) to PCS (4th)
* In-situ computation of coherent and incoherent classical far-field radiation due to charged-particle motion
* Self-consistent additions to the PIC cycle, e.g.:
- QED synchrotron radiation and Bremsstrahlung (photon emission)
- Binary particle collisions
- Thomas-Fermi collisional ionization
- ADK and BSI field ionization
- Classical radiation reaction
......@@ -84,14 +86,15 @@ Charged particles like electrons and ions are modeled by macro-particles. Each o
The particle motion in turn creates currents. Following Ampère's law these currents create magnetic fields, which then are used to compute the electric fields as described by Faraday's law.
These new fields then act back on the particles.
These new fields then act back on the particles, starting the next iteration cycle.
## What is so new about PIConGPU?
GPUs (Graphics processing units) show very high computational performance, because many processors work in parallel. In order to make the most out of this performance, the processors should work independently of each other. In case of the PIC-Algorithm this is hard to achieve, since in the electrical current deposition step, currents which are fixed to the cells have to be computed from the velocity of particles moving freely between grid cells. This motion leads to memory access patterns in which electrical current data and particle data are located at different places in the memory and parallel processes can disturb each others execution when accessing the same part of the memory.
This problem was solved in our group using a novel data model for particle and grid-based data and asynchronous data transfer.
This enables to compute 100s of billions of macro-particles on a GPU compute cluster.
Furthermore, PIConGPU is written in a hardware agnostic way using an hierarchical system model, that is mapped to the available compute resources by the zero-overheap compile time library [Alpaka](https://github.com/alpaka-group/alpaka). As a result PIConGPU shows similarly great performance on all supported platforms (CPUs from all vendors, as well as AMD and NVIDIA GPUs and FPGAs).
Furthermore, PIConGPU is written in a hardware agnostic way using an hierarchical system model, that is mapped to the available compute resources by the zero-overhead compile time library [Alpaka](https://github.com/alpaka-group/alpaka). As a result, PIConGPU shows similarly great performance on all supported platforms (CPUs from all vendors, as well as AMD and NVIDIA GPUs and FPGAs).
## All that with a single GPU?
......@@ -106,4 +109,5 @@ We were able to solve this problem by interleaving the data transfer between GPU
## What does this mean for simulations?
We want to speed up the time of the simulation to reduce the time between the start of the simulation and the reception of the final result. With GPUs this speed up can mean that a simulation that normally takes a week to finish can finish within a few hours.
This enables creating digital twins of lab experiments for day-to-day simulation feedback within an experimental campaign instead of weeks between experiments and simulation results.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment