RWTH Aachen University = Rheinisch-Westfälische Technische Hochschule Aachen (RWTH Aachen), RIKEN Center for Computational Science [Kobe] (RIKEN CCS), RIKEN - Institute of Physical and Chemical Research [Japon] (RIKEN), Laboratoire d'Informatique Parallélisme Réseaux Algorithmes Distribués (LI-PaRAD), Université de Versailles Saint-Quentin-en-Yvelines (UVSQ), Maison de la Simulation (MDLS), Université de Versailles Saint-Quentin-en-Yvelines (UVSQ)-Institut National de Recherche en Informatique et en Automatique (Inria)-Commissariat à l'énergie atomique et aux énergies alternatives (CEA)-Université Paris-Saclay-Centre National de la Recherche Scientifique (CNRS), Centre de Recherche en Informatique, Signal et Automatique de Lille - UMR 9189 (CRIStAL), Centrale Lille-Université de Lille-Centre National de la Recherche Scientifique (CNRS), Centre National de la Recherche Scientifique (CNRS), Center for Computational Sciences [Tsukuba] (CCS), Université de Tsukuba = University of Tsukuba, Hans-Joachim Bungartz, Severin Reiz, Benjamin Uekermann, Philipp Neumann, Wolfgang E. Nagel
Source:
Hans-Joachim Bungartz; Severin Reiz; Benjamin Uekermann; Philipp Neumann; Wolfgang E. Nagel. Software for Exascale Computing - SPPEXA 2016-2019. :545-567
In recent years the increasing compute power is mainly provided by rapidly increasing concurrency. Therefore, the HPC community is looking for new parallel programming paradigms to make the best use of current and upcoming machines. Under the Japanese CREST funding program, the post-petascale HPC project developed the XcalableMP programming paradigm, a pragma-based partitioned global address space (PGAS) approach. To better exploit the potential concurrency of large scale systems, the mSPMD model was proposed and implemented with the YvetteML workflow description language. When introducing a new parallel programming paradigm, good tool support for debugging and performance analysis is crucial for the productivity and therefore the acceptance in the HPC community. The subject of the MYX project is to investigate which properties of a parallel programming language specification may help tools to highlight correctness and performance issues or help to avoid common issues in parallel programming in the first place. In this paper, we exercise these investigations on the example of XcalableMP and YvetteML.