10 research outputs found
Plasma physics code contribution to the Mont-Blanc project
This work develops strategies for adapting a particle-in-cell
code to heterogeneous computer architectures and, in particular, to
an ARM-based prototype of the Mont-Blanc project using OmpSs
programming model and the OpenMP and OpenCL languages
Implementation of 2D Domain Decomposition in the UCAN Gyrokinetic Particle-in-Cell Code and Resulting Performance of UCAN2
The massively parallel, nonlinear, three-dimensional (3D), toroidal, electrostatic, gyrokinetic, particle-in-cell (PIC), Cartesian geometry UCAN code, with particle ions and adiabatic electrons, has been successfully exercised to identify non-diffusive transport characteristics in present day tokamak discharges. The limitation in applying UCAN to larger scale discharges is the 1D domain decomposition in the toroidal (or z-) direction for massively parallel implementation using MPI which has restricted the calculations to a few hundred ion Larmor radii or gyroradii per plasma minor radius. To exceed these sizes, we have implemented 2D domain decomposition in UCAN with the addition of the y-direction to the processor mix. This has been facilitated by use of relevant components in the P2LIB library of field and particle management routines developed for UCLA's UPIC Framework of conventional PIC codes. The gyro-averaging specific to gyrokinetic codes is simplified by the use of replicated arrays for efficient charge accumulation and force deposition. The 2D domain-decomposed UCAN2 code reproduces the original 1D domain nonlinear results within round-off. Benchmarks of UCAN2 on the Cray XC30 Edison at NERSC demonstrate ideal scaling when problem size is increased along with processor number up to the largest power of 2 available, namely 131,072 processors. These particle weak scaling benchmarks also indicate that the 1 nanosecond per particle per time step and 1 TFlops barriers are easily broken by UCAN2 with 1 billion particles or more and 2000 or more processors.This work was supported in part in the USA by Grant No. DE-FG02-04ER54741 to the University of Alaska, Fairbanks, AK, from the Office of Fusion Energy Sciences, Office of Science, United States Department of Energy. It was also supported in part at Universidad Carlos III, Madrid, Spain, by Spanish National Project No. ENE2009-12213-C03-03. This research used resources of the National Energy Research Scientific Computing Center (NERSC), which is supported by the Office of Science of the U.S. Department of Energy under Contract No. DE-AC02-05CH11231. It also took advantage of resources at the Barcelona Supercomputing Center (BSC), Centro Nacional de Supercomputación, Barcelona, Spain. One of us (Leboeuf) would particularly like to thank David Vicente from BSC and Zhengji Zhao from NERSC for their help in the porting, debugging, and optimization of UCAN2 on the mainframes at their respective centers
ORB5: a global electromagnetic gyrokinetic code using the PIC approach in toroidal geometry
This paper presents the current state of the global gyrokinetic code ORB5 as
an update of the previous reference [Jolliet et al., Comp. Phys. Commun. 177
409 (2007)]. The ORB5 code solves the electromagnetic Vlasov-Maxwell system of
equations using a PIC scheme and also includes collisions and strong flows. The
code assumes multiple gyrokinetic ion species at all wavelengths for the
polarization density and drift-kinetic electrons. Variants of the physical
model can be selected for electrons such as assuming an adiabatic response or a
``hybrid'' model in which passing electrons are assumed adiabatic and trapped
electrons are drift-kinetic. A Fourier filter as well as various control
variates and noise reduction techniques enable simulations with good
signal-to-noise ratios at a limited numerical cost. They are completed with
different momentum and zonal flow-conserving heat sources allowing for
temperature-gradient and flux-driven simulations. The code, which runs on both
CPUs and GPUs, is well benchmarked against other similar codes and analytical
predictions, and shows good scalability up to thousands of nodes
Two-constraint Domain Decomposition with Space Filling Curves
In scientific computing, Space Filling Curves are a widely used tool for one-constraint domain decomposition. They provide a mechanism to sort multi-dimensional data in a locality preserving way, and, in this way, a (one dimensional) list of mesh elements is established which is subsequently split into partitions under consideration of the constraint. This procedure has a runtime of O(N logN) (N is the number of mesh elements) while nearly perfect load balancing can be established with reasonable partition surface sizes. Inthiswork, wediscuss theextensibilityofthisproceduretotwo-constraintsettings whichis desirable, since the methodology is extremely fast. Here, the splitting operation is subject to two constraints, and, unlike to the one-constraint case, obtaining near perfect balancing is often hard to establish, and is, even more as in the one-constraint case, in conflict with the induced surface sizes (or edge-cuts). We discuss multiple strategies to tackle the splitting, and we present a fast, O(N logN) splitting heuristic algorithm which provides an integer σ that allows to trade off between balancing and surface sizes which results in a O(N logN) two-constraint decomposition method. Results are compared to the multi-constraint domain decomposition abilities implemented in the Metis software package, and show that the method produces higher surface sizes, but is orders of magnitudes faster which makes the method superior for certain applications
XXIII Congreso Argentino de Ciencias de la Computación - CACIC 2017 : Libro de actas
Trabajos presentados en el XXIII Congreso Argentino de Ciencias de la Computación (CACIC), celebrado en la ciudad de La Plata los dÃas 9 al 13 de octubre de 2017, organizado por la Red de Universidades con Carreras en Informática (RedUNCI) y la Facultad de Informática de la Universidad Nacional de La Plata (UNLP).Red de Universidades con Carreras en Informática (RedUNCI