Hybrid-View Programming of Nuclear Fusion Simulation Code in XcalableMP
183
microturbulence phenomenon in plasmas for magnetically confined fusion devices,
non-flat domain decomposition is necessary in one dimension, as well as parallelizing multiple dimensions, to obtain accurate large-scale simulations. Therefore, the
number of computations becomes extremely large for next-generation and largescale reactors such as ITER.
We consider both types of data models in XMP, i.e., global-view and localview models, which are suitable for representing grid space data and particle data,
respectively, because of their data distribution and communication pattern. In this
study, we implement the GTC-P code in two ways: using XMP with a localview only model, and with a combination of local-view and global-view models,
where we evaluate the performance and productivity of these approaches. As the
preliminary result, we implemented and evaluated the GTC-P in XMP hybrid-view
model[15]. Moreover, we indicate the causes of performance degradation for GTCP in XMP and evaluate the GTC-P of hybrid versions written in XMP+OpenMP and
MPI+OpenMP in this study.
The remainder of this chapter is organized as follows. Next, we briefly describe
the GTC-P nuclear fusion simulation code in Sect. 2. Section 3 describes the
implementation of GTC-P using Hybrid programing model of XMP. We report the
performance and productivity evaluation in Sect. 4, and related works in Sect. 5.
Finally, we conclude our study in Sect. 6.
2 Nuclear Fusion Simulation Code
Typical methods used to simulate the microturbulence phenomenon in magnetically
confined fusion plasmas include the Monte Carlo method and the PIC method. In
this study, we only consider the gyrokinetic PIC method among them as a target
application to explain the GTC and GTC-P code briefly.
2.1 Gyrokinetic PIC Simulation
The simulation of the gyrokinetic PIC method uses a space grid to calculate the field
and for the particle trajectory calculation, which does not depend on the grid when
moving in the free space. Figure 1 shows an image of a gyrokinetic PIC simulation
with a two-dimensional block distribution. The typical behavior of the gyrokinetic
PIC code is as follows.
1. Add the charge of the particle to the nearby grid points.
2. Solve the electric field affected by the electrostatic potential by calculating the
charge density of the nearby grid points using Poisson’s equation.
3. Interpolate the electric field in the current position based on each particle in the
nearby grid points and move the position of the particle in the space.
Précédent

- 188/265

Suivant