skip to main content


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

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 programmingmore » 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.« less
 [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)
Publication Date:
Accepted Manuscript
Journal Name:
Parallel Computing
Additional Journal Information:
Journal Volume: 57; Journal Issue: C; Journal ID: ISSN 0167-8191
Research Org:
Princeton Plasma Physics Lab. (PPPL), Princeton, NJ (United States)
Sponsoring Org:
Country of Publication:
United States
97 MATHEMATICS AND COMPUTING; GTC-P; partitioned global address space; gyrokinetic PIC code; nuclear fusion simulation; XcalableMP
OSTI Identifier: