vi
Preface
Currently, the working group is organized under the PC Cluster Consortium,
Japan.
• Design based on the PGAS model and Coarray Fortran: In XcalableMP, the
PGAS model is adopted as the main programming model since it is an emerging
programming model for exascale computing. In addition, we extend it with the
idea taken from HPF for global view programming. Coarray feature is taken as a
local view programming.
• Used as a research vehicle for researches for programming language: As
advanced researches, an extension to accelerator, XcalableACC, and global taskparallel programming for XcalableMP 2.0 are explored based on the XcalableMP
language.
This book presents XcalableMP language from its programming model and basic
concept to the experience and performance of applications described in XcalableMP
and some extended research projects using XcalableMP.
Chapter “XcalableMP Programming Model and Language” presents the
overview of XcalableMP programming model and language, followed by
implementation and performance evaluation of a reference prototype compiler
and Omni XcalableMP compiler, in Chapter “Implementation and Performance
Evaluation of Omni Compiler”. Chapter “Coarrays in the Context of XcalableMP”
presents how to design and implement the Coarray feature in the XcalableMP
compiler.
XcalableACC is an extended project to integrate the OpenACC with XcalableMP
for the programming of the cluster with accelerators. Chapter “XcalableACC: An
Integration of XcalableMP and OpenACC” describes the XcalableACC with the
implementation and performance evaluation.
Chapter “Mixed-Language Programming with XcalableMP” presents the mixedlanguage programming with XcalableMP. It demonstrates how to use XcalableMP
with other programming languages such as Python. The global view programming
of XcalableMP provides very simple and intuitive programming tools to describe a
part of program controlled by Python.
Chapters “Three-Dimensional Fluid Code with XcalableMP”, “Hybrid-View
Programming of Nuclear Fusion Simulation Code in XcalableMP” and “Parallelization of Atomic Image Reconstruction from X-ray Fluorescence Holograms with
XcalableMP” present applications experiences, “Three-Dimensional Fluid Code,”
“Nuclear Fusion Simulation Code,” and “Atomic Image Reconstruction from X-ray
Fluorescence Holograms” described in XcalableMP.
Chapter “Multi-SPMD Programming Model with YML and XcalableMP”
presents the international collaboration with French and German partners.
Framework and Programming for Post-Petascale Computing (FP3C) project
conducted during September 2010–March 2013 aimed to exploit efficient
programming and method for future supercomputers. In the FP3C project, the
mSPMD programming had been proposed with the integration of the XcalableMP
and YML workflow programming environment. The priority program “Software for
Exascale Computing” (SPPEXA) by the collaboration with three countries, Japan,
Preface
Currently, the working group is organized under the PC Cluster Consortium,
Japan.
• Design based on the PGAS model and Coarray Fortran: In XcalableMP, the
PGAS model is adopted as the main programming model since it is an emerging
programming model for exascale computing. In addition, we extend it with the
idea taken from HPF for global view programming. Coarray feature is taken as a
local view programming.
• Used as a research vehicle for researches for programming language: As
advanced researches, an extension to accelerator, XcalableACC, and global taskparallel programming for XcalableMP 2.0 are explored based on the XcalableMP
language.
This book presents XcalableMP language from its programming model and basic
concept to the experience and performance of applications described in XcalableMP
and some extended research projects using XcalableMP.
Chapter “XcalableMP Programming Model and Language” presents the
overview of XcalableMP programming model and language, followed by
implementation and performance evaluation of a reference prototype compiler
and Omni XcalableMP compiler, in Chapter “Implementation and Performance
Evaluation of Omni Compiler”. Chapter “Coarrays in the Context of XcalableMP”
presents how to design and implement the Coarray feature in the XcalableMP
compiler.
XcalableACC is an extended project to integrate the OpenACC with XcalableMP
for the programming of the cluster with accelerators. Chapter “XcalableACC: An
Integration of XcalableMP and OpenACC” describes the XcalableACC with the
implementation and performance evaluation.
Chapter “Mixed-Language Programming with XcalableMP” presents the mixedlanguage programming with XcalableMP. It demonstrates how to use XcalableMP
with other programming languages such as Python. The global view programming
of XcalableMP provides very simple and intuitive programming tools to describe a
part of program controlled by Python.
Chapters “Three-Dimensional Fluid Code with XcalableMP”, “Hybrid-View
Programming of Nuclear Fusion Simulation Code in XcalableMP” and “Parallelization of Atomic Image Reconstruction from X-ray Fluorescence Holograms with
XcalableMP” present applications experiences, “Three-Dimensional Fluid Code,”
“Nuclear Fusion Simulation Code,” and “Atomic Image Reconstruction from X-ray
Fluorescence Holograms” described in XcalableMP.
Chapter “Multi-SPMD Programming Model with YML and XcalableMP”
presents the international collaboration with French and German partners.
Framework and Programming for Post-Petascale Computing (FP3C) project
conducted during September 2010–March 2013 aimed to exploit efficient
programming and method for future supercomputers. In the FP3C project, the
mSPMD programming had been proposed with the integration of the XcalableMP
and YML workflow programming environment. The priority program “Software for
Exascale Computing” (SPPEXA) by the collaboration with three countries, Japan,
