% IMPORTANT: The following is UTF-8 encoded. This means that in the presence
% of non-ASCII characters, it will not work with BibTeX 0.99 or older.
% Instead, you should use an up-to-date BibTeX implementation like “bibtex8” or
% “biber”.
@TECHREPORT{Carpenter:1005502,
author = {Carpenter, Paul and Utz, Uwe-Haus and Narasimhamurthy, Sai
and Suarez, Estela},
title = {{H}eterogeneous {H}igh {P}erformance {C}omputing},
number = {6},
address = {ETP4HPC},
publisher = {Zenodo},
reportid = {FZJ-2023-01508, 6},
series = {ETP4HPC White Papers},
pages = {18 pp.},
year = {2022},
abstract = {Modern HPC systems are becoming increasingly heterogeneous,
affecting all components of HPC systems, from the processing
units, through memory hierarchies and network components to
storage systems. This trend is on the one hand due to the
need to build larger, yet more energy efficient systems, and
on the other hand it is caused by the need to optimise
(parts of the) systems for certain workloads. In fact, it is
not only the systems themselves that are becoming more
heterogeneous, but also scientific and industrial
applications are increasingly combining different
technologies into complex workflows, including simulation,
data analytics, visualisation, and artificial
intelligence/machine learning. Different steps in these
workflows call for different hardware and thus today’s HPC
systems are often composed of different modules optimised to
suit certain stages in these workflows. While the trend
towards heterogeneity is certainly helpful in many aspects,
it makes the task of programming these systems and using
them efficiently much more complicated. Often, a combination
of different programming models is required and selecting
suitable technologies for certain tasks or even parts of an
algorithm is difficult. Novel methods might be needed for
heterogeneous components or be only facilitated by them. And
this trend is continuing, with new technologies around the
corner that will further increase heterogeneity, e.g.
neuromorphic or quantum accelerators, in-memory-computing,
and other non-von-Neumann approaches. In this paper, we
present an overview of the different levels of heterogeneity
we find in HPC technologies and provide recommendations for
research directions to help deal with the challenges they
pose. We also point out opportunities that particularly
applications can profit from by exploiting these
technologies. Research efforts will be needed over the full
spectrum, from system architecture, compilers and
programming models/languages, to runtime systems, algorithms
and novel mathematical approaches.},
cin = {JSC},
cid = {I:(DE-Juel1)JSC-20090406},
pnm = {5122 - Future Computing $\&$ Big Data Systems (POF4-512) /
DEEP-SEA - DEEP – SOFTWARE FOR EXASCALE ARCHITECTURES
(955606)},
pid = {G:(DE-HGF)POF4-5122 / G:(EU-Grant)955606},
typ = {PUB:(DE-HGF)3 / PUB:(DE-HGF)29},
doi = {10.5281/ZENODO.6090425},
url = {https://juser.fz-juelich.de/record/1005502},
}