skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Hybrid-view programming of nuclear fusion simulation code in the PGAS parallel programming language XcalableMP

Journal Article · · Parallel Computing
 [1];  [1];  [2];  [3];  [4];  [4]
  1. Univ. of Tsukuba, Ibaraki (Japan)
  2. RIKEN, Hyogo (Japan)
  3. Univ. of Tsukuba, Ibaraki (Japan); RIKEN, Hyogo (Japan)
  4. Princeton Univ., Princeton, NJ (United States)

Recently, the Partitioned Global Address Space (PGAS) parallel programming model has emerged as a usable distributed memory programming model. XcalableMP (XMP) is a PGAS parallel programming language that extends base languages such as C and Fortran with directives in OpenMP-like style. XMP supports a global-view model that allows programmers to define global data and to map them to a set of processors, which execute the distributed global data as a single thread. In XMP, the concept of a coarray is also employed for local-view programming. In this study, we port Gyrokinetic Toroidal Code - Princeton (GTC-P), which is a three-dimensional gyrokinetic PIC code developed at Princeton University to study the microturbulence phenomenon in magnetically confined fusion plasmas, to XMP as an example of hybrid memory model coding with the global-view and local-view programming models. In local-view programming, the coarray notation is simple and intuitive compared with Message Passing Interface (MPI) programming while the performance is comparable to that of the MPI version. Thus, because the global-view programming model is suitable for expressing the data parallelism for a field of grid space data, we implement a hybrid-view version using a global-view programming model to compute the field and a local-view programming model to compute the movement of particles. Finally, the performance is degraded by 20% compared with the original MPI version, but the hybrid-view version facilitates more natural data expression for static grid space data (in the global-view model) and dynamic particle data (in the local-view model), and it also increases the readability of the code for higher productivity.

Research Organization:
Princeton Plasma Physics Lab. (PPPL), Princeton, NJ (United States)
Sponsoring Organization:
USDOE
OSTI ID:
1332725
Journal Information:
Parallel Computing, Vol. 57, Issue C; ISSN 0167-8191
Publisher:
ElsevierCopyright Statement
Country of Publication:
United States
Language:
English
Citation Metrics:
Cited by: 2 works
Citation information provided by
Web of Science