DocumentCode :
3588695
Title :
Hybrid-view programming of nuclear fusion simulation code in the PGAS parallel programming language XcalableMP
Author :
Tsugane, Keisuke ; Nuga, Hideo ; Boku, Taisuke ; Murai, Hitoshi ; Sato, Mitsuhisa ; Tang, William ; Bei Wang
Author_Institution :
Grad. Sch. of Syst. & Inf. Eng., Univ. of Tsukuba, Tsukuba, Japan
fYear :
2014
Firstpage :
640
Lastpage :
647
Abstract :
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 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. The performance is degraded by 5-25% compared with the original MPI version, but the hybrid-view version facilitates more natural data expression for static grid space data (in global-view model) and dynamic particle data (in local-view model), and it also increases the readability of the code for higher productivity.
Keywords :
message passing; nuclear engineering computing; nuclear fusion; parallel programming; programming languages; C language; Fortran language; Gyrokinetic Toroidal Code - Princeton; MPI; PGAS parallel programming language; XcalableMP language; distributed memory programming model; global-view programming; hybrid-view programming; local-view programming; message passing interface; nuclear fusion simulation code; partitioned global address space; Arrays; Computational modeling; Data models; Distributed databases; Program processors; Programming; Toroidal magnetic fields; GTC-P; Nuclear Fusion Simulation; PIC code; Partitioned Global Address Space; XcalableMP;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Parallel and Distributed Systems (ICPADS), 2014 20th IEEE International Conference on
Type :
conf
DOI :
10.1109/PADSW.2014.7097864
Filename :
7097864
Link To Document :
بازگشت