Task-Based Performance Portability in HPC ; Task-Based Performance Portability in HPC: Maximising long-term investments in a fast evolving, complex and heterogeneous HPC landscape

Gespeichert in:
Bibliographische Detailangaben
Titel: Task-Based Performance Portability in HPC ; Task-Based Performance Portability in HPC: Maximising long-term investments in a fast evolving, complex and heterogeneous HPC landscape
Autoren: Aumage, Olivier, Carpenter, Paul, Benkner, Siegfried
Weitere Verfasser: Laboratoire Bordelais de Recherche en Informatique (LaBRI), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB), STatic Optimizations, Runtime Methods (STORM), Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Université de Bordeaux (UB)-Centre National de la Recherche Scientifique (CNRS)-École Nationale Supérieure d'Électronique, Informatique et Radiocommunications de Bordeaux (ENSEIRB)-Inria Bordeaux - Sud-Ouest, Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria), Barcelona Supercomputing Center - Centro Nacional de Supercomputacion (BSC - CNS), University of Vienna Vienna, European Technology Platform for High Performance Computing (ETP4HPC)
Quelle: https://hal.inria.fr/hal-03368013 ; European Technology Platform for High Performance Computing (ETP4HPC). 2021, ⟨10.5281/zenodo.5549731⟩.
Verlagsinformationen: HAL CCSD
Publikationsjahr: 2021
Bestand: Archive ouverte HAL (Hyper Article en Ligne, CCSD - Centre pour la Communication Scientifique Directe)
Schlagwörter: Parallel programming model, Runtime systems, Task Scheduling, High performance computing HPC, [INFO.INFO-DC]Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC]
Beschreibung: White paper ; International audience ; As HPC hardware continues to evolve and diversify and workloads become more dynamic and complex, applications need to be expressed in a way that facilitates high performance across a range of hardware and situations. The main application code should be platform-independent, malleable and asynchronous with an open, clean, stable and dependable interface between the higher levels of the application, library or programming model and the kernels and software layers tuned for the machine. The platform-independent part should avoid direct references to specific resources and their availability, and instead provide the information needed to optimise behaviour.This paper summarises how task abstraction, which first appeared in the 1990s and is already mainstream in HPC, should be the basis for a composable and dynamic performance-portable interface. It outlines the innovations that are required in the programming model and runtime layers, and highlights the need for a greater degree of trust among application developers in the ability of the underlying software layers to extract full performance. These steps will help realise the vision for performance portability across current and future architectures and problems.
Publikationsart: book
Sprache: English
Relation: hal-03368013; https://hal.inria.fr/hal-03368013; https://hal.inria.fr/hal-03368013/document; https://hal.inria.fr/hal-03368013/file/etp4hpc_wp_tasks_oaumage_2021.pdf
DOI: 10.5281/zenodo.5549731
Verfügbarkeit: https://hal.inria.fr/hal-03368013
https://hal.inria.fr/hal-03368013/document
https://hal.inria.fr/hal-03368013/file/etp4hpc_wp_tasks_oaumage_2021.pdf
https://doi.org/10.5281/zenodo.5549731
Rights: info:eu-repo/semantics/OpenAccess
Dokumentencode: edsbas.AF57569C
Datenbank: BASE
Beschreibung
Abstract:White paper ; International audience ; As HPC hardware continues to evolve and diversify and workloads become more dynamic and complex, applications need to be expressed in a way that facilitates high performance across a range of hardware and situations. The main application code should be platform-independent, malleable and asynchronous with an open, clean, stable and dependable interface between the higher levels of the application, library or programming model and the kernels and software layers tuned for the machine. The platform-independent part should avoid direct references to specific resources and their availability, and instead provide the information needed to optimise behaviour.This paper summarises how task abstraction, which first appeared in the 1990s and is already mainstream in HPC, should be the basis for a composable and dynamic performance-portable interface. It outlines the innovations that are required in the programming model and runtime layers, and highlights the need for a greater degree of trust among application developers in the ability of the underlying software layers to extract full performance. These steps will help realise the vision for performance portability across current and future architectures and problems.
DOI:10.5281/zenodo.5549731