Auf dem Weg zur nächsten HPC-Generation

Keyvisual image main
Bild: iStock.com/nadia

Mehrere neue Forschungsprojekte am HLRS stellen wichtige technische Herausforderungen des Supercomputing dar und zeigen auf, wie das Zentrum an Lösungen für die Zukunft des Höchstleistungsrechnens arbeitet.

Das Jahr 2022 wird als Beginn der Exascale-Ära in die Geschichte des Supercomputings eingehen. In der Top500-Liste der schnellsten Höchstleistungsrechner der Welt wurde im Juni 2022 das Frontier-System am Oak Ridge National Laboratory in den Vereinigten Staaten als erste Exaflop-Maschine angekündigt – ein Sprung in die nächste Größenordnung der Rechengeschwindigkeit, der der Ausführung von mehr als einer Trillion (1018) Gleitkommaoperationen pro Sekunde entspricht. Auch Europa wird diesen Punkt bald erreichen. Im August 2022 kündigte die EuroHPC Joint Undertaking (EuroHPC JU) an, dass das Jülich Supercomputing Centre (JSC) bald Europas erstes Exascale-System beherbergen wird, während mehrere Pre-Exascale-Systeme derzeit auf dem gesamten Kontinent eingeführt werden. Auch die Partner des JSC im Gauss Centre for Supercomputing – das Leibniz-Rechenzentrum (LRZ) und das Höchstleistungsrechenzentrum Stuttgart (HLRS) – bereiten sich auf ihren eigene „Exa- scale-Reise“ vor. Das HLRS plant derzeit, bis 2027 ein System auf diesem Niveau zu installieren.

Um diese blitzschnelle Geschwindigkeit zu erreichen, reicht es nicht aus, einfach größere Maschinen zu bauen. Denn die Pre-Exascale- und Exascale-Systeme von heute unterscheiden sich grundlegend von den Supercomputern früherer Generationen. Entscheidend ist, dass für den Betrieb und die Kühlung von Systemen dieser Größenordnung erheblich mehr Energie benötigt wird. Daher muss die Energieeffizienz bei Betrieb und Nutzung für finanzielle und ökologische Nachhaltigkeit erheblich maximiert werden. Gleichzeitig stoßen die Hardware-Hersteller an die physikalischen Grenzen der auf jedem einzelnen Computerchip erreichbaren Leistung. Demnach hat die nach Mooreschem Gesetz er- wartete Entwicklung im Grunde genommen ihr Ende erreicht. Im Hinblick auf die Systemarchitektur bedeu- tet dies, dass die Supercomputer einer früheren Generation wuchsen, indem eine größere Anzahl an Zentraleinheiten (CPU) hinzugefügt wurde. Dahingegen kombiniert die neue Generation zunehmend CPUs mit speziell entwickelten Beschleunigern, die häufig auf der Technologie der Grafikverarbeitungseinheiten (GPU) basieren. Diese heterogenen Systeme sind schneller und energieeffizienter, aber sie erfordern auch neue Programmiermodelle und Software, um ihre Leistung voll auszuschöpfen. Dies liegt nicht nur an der größeren Anzahl von Prozessoren, sondern auch daran, dass derzeit viele weit verbreitete Softwarepakete und wissenschaftliche Anwendungen, die für reine CPU- Systeme entwickelt wurden, auf beschleunigten Systemen kaum unterstützt, geschweige denn optimiert werden.

Die Konvergenz von Supercomputern mit anderen digitalen Technologien verschärft diese Herausforderungen zusätzlich – es entstehen zunehmend hybride Rechensysteme und Arbeitsabläufe. Sensoren, Edge und Cloud Computing, künstliche Intelligenz und Quantencomputing eröffnen der Forschung, Technologieentwicklung und öffentlichen Verwaltung Chancen, aber ihre effektive Kombination erfordert neue Programmier-Workflows und Systemabläufe. Bei HPC geht es nicht mehr nur darum, eine große Simulation auf einem einzigen Supercomputer laufen zu lassen. Zunehmend entsteht ein komplexer, verteilter Prozess, der zwischen Computern mit unterschiedlichen Fähigkeiten und Programmieranforderungen koordiniert werden muss, die sich oft an verschiedenen Standorten befinden. Die Steuerung der Prozesse, die erforderlich sind, damit diese Technologien miteinander kommunizieren und Daten schnell und sicher übertragen werden können, erfordert neue Ansätze für die Verwaltung von Aufgaben in diesen Netzen.

Außerdem entwickeln sich nicht alle HPC-Hardwarekomponenten in gleichem Tempo weiter. In der Vergangenheit konnte beispielsweise die Speicherhardware kaum mit den beschleunigten Systemen Schritt halten. Das heißt, dass das Schreiben und Lesen von Daten weiterhin große Simulationen verlangsamen kann. Auch die künstliche Intelligenz verändert wichtige Merkmale wissenschaftlicher Daten. Während bei klassischen Simulationen relativ wenige Eingabedaten verwendet wurden, müssen mit künstlicher Intelligenz riesige Datensätze verwaltet werden, die aus Millionen kleiner Dateien bestehen. Das bedeutet, dass die Ein- und Ausgabe (I/O) in verteilten Dateisystemen für die Datenverarbeitung optimiert werden muss. Obwohl eine höhere Verarbeitungsgeschwindigkeit beispielsweise komplexere Ensemblesimulationen oder Multiphysikmodelle ermöglicht, entstehen auch zunehmend große Datenberge. Die Archivierung dieser Daten zur Wiederverwendung in zukünftigen Studien, zum Training von KI-Algorithmen oder zur Überprüfung der Ergebnisse einer wissenschaftlichen Arbeit droht HPC-Zentren zu überfordern. Dies ist bedingt von dem Platz- und Energiebedarf für die Datenspeicherung als auch dem Zeitaufwand für die Sicherung oder Übertragung großer Datensätze.

„Während das Supercomputing weiterhin wächst, bringen die Veränderungen viele Herausforderungen mit sich“, sagt Prof. Dr. Michael Resch, Direktor des HLRS. „Als Bundeshöchstleistungsrechenzentrum ist es in dieser neuen Landschaft unsere Aufgabe, genau die Infrastruktur, Lösungen, Unterstützung und Ausbildung bereitzustellen, mit denen Forschende diese Veränderungen bewältigen und letztendlich effizient und nachhaltig ihre komplexen Fragen beantworten können.“

In einigen Forschungsprojekten, die Ende 2022 und Anfang 2023 anlaufen, entwickeln und testen Mitarbeitende des HLRS potenzielle Lösungen für große HPC-Herausforderungen. Diese Projekte in Zusammenarbeit mit anderen führenden HPC-Zentren und der Industrie werden sowohl zur Entwicklung des Fachgebiets beitragen als auch sicherstellen, dass das HLRS seinen Systemnutzer:innen weiterhin Unterstützung auf dem neuesten Stand der Technik bietet. Diese Projekte bieten auch einen Einblick in die Zukunft des Höchstleis- tungsrechnens.

Software im Exascale-Bereich

Ein Vorteil größerer HPC-Systeme besteht darin, dass sie Simulationen ermöglichen, bei denen potenziell Milliarden von parallelen Berechnungen gleichzeitig ausgeführt werden. Bei vielen Simulationen, z. B. der numerischen Strömungsmechanik (CFD) oder der Klimamodellierung, erstellen Programmierer:innen ein Rechengitter, das eine große Simulation in kleinere Einheiten unterteilt, die einzeln berechnet und dann wieder integriert werden, um das System als Ganzes zu verstehen. Um parallele Rechensysteme möglichst effizient zu nutzen, müssen Programmierer:innen diese Einheiten basierend auf den verfügbaren Verarbeitungseinheiten umverteilen. Wenn größere Computer mit hybriden Architekturen in Betrieb genommen werden, steigt die Anzahl der CPUs. Dadurch wird es schwieriger, mit bestehenden Algorithmen eine effiziente Leistung zu erzielen. Viele Herausforderungen, die Wissenschaftler:innen und Ingenieur:innen aktuell lösen müssen, können nicht in vollem Umfang von der Geschwindigkeit neuer Exaflop-fähiger Systeme profitieren, wenn die Codes nicht entsprechend skaliert werden.

Als Mitglied des EuroHPC-JU-geförderten Projekts CEEC (Center of Excellence for Exascale CFD) verbessert das HLRS modernste Algorithmen und Methoden für die numerische Strömungsmechanik, sodass sie im Exascale-Bereich effizient arbeiten können. Das Projekt zielt darauf ab, Exascale-fähige Arbeitsabläufe für extrem große Rechensysteme zu entwickeln, Methoden zur Verringerung des Energieverbrauchs für die Ausführung dieser Algorithmen zu implementieren und die Wirksamkeit dieser neuen Algorithmen in Anwendungen für die akademische und industrielle Forschung zu demonstrieren. Das Projekt konzentriert sich auf Algorithmen, die für CFD-Simulationen benötigt werden, u. a. in der Luftfahrttechnik, chemischen Industrie und Windenergie sowie in den Umwelt- und Atmosphärenwissenschaften.

Ein Überblick über ausgewählte Hauptthemen und Forschungsbereiche, die die Zukunft des Höchstleistungsrechnens treiben werden.

Das HLRS koordiniert darüber hinaus das europäische Exzellenzzentrum für Ingenieuranwendungen, EXCELLERAT. Das Projekt stellt Services für die Weiterentwicklung von Codes bereit und verfolgt damit eine ähnliche Strategie, um die Industrie auf die nächste Generation des Höchstleistungsrechnens vorzubereiten. Die Forschenden des Projekts haben in der ersten Phase wichtige Codes für die Automobilindustrie, die Luft- und Raumfahrt und den Energiesektor so angepasst, dass sie auf einer wesentlich größeren Anzahl von Prozessoren effizient ausgeführt werden können. So unter anderem auf Systemen, die GPUs und andere neuere Prozessortypen enthalten. Die Ergebnisse zeigen eine Steigerung der Verarbeitungsgeschwindigkeit um bis zu 90 % sowie eine deutlich verbesserte Auflösung der Simulationen. Dadurch lassen sich feinere Details in Simulationen von Luftströmungen um Flugzeugflügel oder Verbrennungsreaktionen darstellen. Gegen Ende 2022 wurde die Finanzierung der zweiten Projektphase von EXCELLERAT bestätigt. Das Exzellenzzentrum wird die Industrie auch in den kommenden Jahren bei der Vorbereitung auf die nächste HPC-Generation unterstützen.

Das HLRS ist darüber hinaus an zwei weiteren EuroHPC-Exzellenzzentren beteiligt, die sich mit Software für das Exascale Computing befassen und deren zweite Projektphase Anfang 2023 begonnen hat: ChEESE entwickelt Exascale-fähige Codes für die Geowissenschaften, die Frühwarn- und Gefahrenprognosen sowie Notfallmaßnahmen bei Risiken wie Vulkanausbrüchen, Erdbeben oder Tsunamis unterstützen könnten. Das HiDALGO-Projekt, in dem das HLRS die technische Koordination übernimmt, konzentriert sich auch in der zweiten Projektphase auf die Entwicklung von Methoden, die bei der Bewältigung globaler Herausforderungen mithilfe neuer, hybrider HPC-Systeme helfen könnten.

Intelligentere Systeme

In der Vergangenheit ließ sich der Energieverbrauch eines Supercomputers mit groben Ansätzen begrenzen, u.a. mittels Verringerung der Taktfrequenz, die die Prozessorgeschwindigkeit steuert, oder dem Abschalten von Teilen des Systems, wenn sie nicht benutzt wurden. Moderne HPC-Systeme bieten jedoch mehr Möglichkeiten mit hohem Energiesparpotenzial. Werden beispielsweise Parameter und Einstellungen in den Programmierparadigmen OpenMP und MPI angepasst, so kann die Softwareleistung verbessert werden, was zu einer effizienteren Energienutzung führt. Wenn mehrere Benutzeranwendungen gleichzeitig auf dem System ausgeführt werden, können Systemadministratoren auch mithilfe von MPI verfolgen und optimieren, wie diese Anwendungen auf einer ganzheitlicheren, systemweiten Basis laufen. Die Bestimmung der optimalen Einstellungen für diesen systemischen Ansatz kann jedoch schwierig sein, insbesondere wenn auf HPC-Systemen viele verschiedene Anwendungen gleichzeitig ausgeführt werden.

In dem Projekt EE-HPC entwickelt und erprobt das HLRS gemeinsam mit Partnern einen neuen Ansatz, der an der Universität Erlangen-Nürnberg initiiert wurde und darauf abzielt, den Energieverbrauch zu senken und gleichzeitig die Rechenauslastung zu maximieren. Mithilfe von maschinellem Lernen wird die entwickelte Software dynamisch Systemparameter einstellen. Diese wird den Energieverbrauch der Hardware basierend auf den zu einem bestimmten Zeitpunkt laufenden Jobs und Job-Phasen optimieren. Als langjähriges Mitglied des MPI-Forums, das Standards für diesen weit verbreiteten Entwicklungsrahmen festlegt, wird das HLRS Monitoringsoftware in die Laufzeitumgebung von OpenMP und MPI integrieren. Eine grafische Benutzeroberfläche bietet Anwender:innen zudem transparente Einblicke in die Entscheidungen, die das System während der Ausführung der Software trifft.

Im Projekt targetDART verfolgt das HLRS Strategien zur Verbesserung der Skalierbarkeit und Energieeffizienz von Anwendungen mittels Optimierung der Lastverteilung. Der Schwerpunkt liegt dabei auf der Programmierschnittstelle OpenMP, die ein systemweites Gleichgewicht in der Verteilung und Ausführung von Rechenaufgaben über ein paralleles Rechensystem orchestriert. Die Herausforderung besteht darin, dass die Rechenaufgaben in parallelen Simulationen von der Ausgabe anderer Tasks abhängen. Die Daten müssen ständig physisch im Computer bewegt werden und die Zeit, die die Prozessoren für die Kommunikation untereinander benötigen, kann das System verlangsamen. Auf den aktuell größten Supercomputern ist die Optimierung des Lastausgleichs schwierig und in hybriden Systemen wird sie sogar noch erschwert, vor allem wenn die Größe des gesamten Systems und damit die Anzahl der zu überwachenden und zu optimierenden Komponenten zunimmt. TargetDART geht diese Herausforderung an, indem das Projekt neue Strategien für die Verwaltung von Task-Abhängigkeiten und das Monitoring sowie die Evaluation der Anwendungsleistung verfolgt. Als Mitglied des MPI-Forums wird das HLRS die in targetDART erreichten Fortschritte auch an die breitere HPC-Community weitergeben.

Digitale Konvergenz: die Puzzleteile zusammenfügen

Während sich Supercomputer in Richtung Exascale entwickeln, entstehen auch andere digitale Technologien, die den Nutzen des Höchstleistungsrechnens weit über die Grenzen des traditionellen HPC-Zentrums hinaus erweitern könnten. Beispielsweise sammeln verschiedene Sensoren Messungen, aus denen sich neue Modelle und Simulationen generieren lassen. Mit Edge Computing können Rechenaufgaben auf Standorte ver- teilt werden, an denen Daten gesammelt und Entscheidungen schneller getroffen werden können. Auch in den Höchstleistungsrechenzentren selbst sind neue Arbeitsabläufe erforderlich, um Simulationen und Datenanalysen zu integrieren, die auf unterschiedlichen Rechnerarchitekturen optimal laufen. All diese Teile zusammenzufügen, ist aktuell eine der größten Herausforderungen des Höchstleistungsrechnens.

Sinnbildlich für diese sich wandelnde Landschaft ist das kürzlich gestartete Projekt DECICE, das sich mit Cloud und Edge Computing befasst. Diese Architekturen sind u. a. für Smart Cities, Industrieautomatisierung und Datenanalyse von Bedeutung, da diese neuen Anwendungen oft Hardware erfordern, die sich in der Nähe der Nutzer:innen befindet. Damit sich diese Hardware in Höchstleistungsrechner wie Hawk am HLRS integrieren lässt, sind niedrige Latenzzeiten und hohe Sicherheit bei der Datenübertragung sowie Standortkenntnis im gesamten Netz die Voraussetzung.

Innerhalb der Projekte ENRICH, DEGREE und SRI DiTEnS erforscht das HLRS neue Methoden zur Verbesserung der eigenen Energieeffizienz und Umweltleistung.

Foto der Kühlungsinfrastruktur des HLRS

DECICE testet neue Methoden, um verteilte Netze von Geräten mit einem zentralen Steuerungscluster zu ver einen. Forschende vom HLRS werden KubeEdge verwenden – ein System, das vom Open-Source-Frame- work Kubernetes abgeleitet ist, das für die Bereitstellung, Skalierung und Verwaltung von Anwendungen in großen hybriden Computersystemen unter Verwendung sogenannter „Container“ konzipiert wurde. DECICE wird KubeEdge weiterentwickeln, das den containerisierten Ansatz von Kubernetes auf das Edge Computing überträgt. Dabei wird ein KI-basierter Ansatz verwendet, um Aufgaben den passenden Ressourcen in einem verteilten System zuzuweisen, das aus verschiedenen Geräten und Prozessoren besteht. Das HLRS stellt die HPC-Infrastruktur für DECICE zur Verfügung und bringt sein Fachwissen in den Bereichen Cloud Computing, HPC-Programmierung und HPC- Systembetrieb ein. Es leitet auch ein Arbeitspaket, in dem das Team einen integrierten Rahmen für die Ver- waltung von Aufgaben in der Cloud, im Edge und HPC entwickeln wird.

Schulungen für die Programmierung neuer HPC-Architekturen

Da die Landschaft größerer, hybrider HPC-Systemarchitekturen zunehmend vielfältig wird, hat das HLRS auch sein Schulungsprogramm angepasst, damit die Rechenressourcen des Zentrums möglichst effektiv genutzt werden. Zusätzlich zu dem traditionellen Kursangebot mit Fokus auf Programmiersprachen für wissenschaftliches Rechnen und parallele Programmier-Frameworks wie MPI und OpenMP hat das Zentrum sein Angebot im Jahr 2022 um Kurse zu GPU-Programmierung, Deep Learning und künstlicher Intelligenz erweitert. Dazu gehörte eine Schulungskooperation mit dem Hardware-Hersteller NVIDIA, die „Bootcamp“-Workshops zur künstlichen Intelligenz in der Wissenschaft und einen tieferen Einblick in wissenschaftliches maschinelles Lernen unter Verwendung physikalischer neuronaler Netzwerke umfasste. Ein weiterer Kurs zum maschinellen Lernen unter Verwendung der Instinct-GPUs von AMD wurde in Zusammenarbeit mit dem Unternehmen abgehalten. Weitere Kurse am HLRS konzentrierten sich auf Programmiermodelle, mit deren Hilfe sich bestehende Codes an beschleunigte Architekturen anpassen lassen. Teil davon war u. a. eine Kollaboration mit INTEL zu oneAPI, SYCL2020 und OpenMP Offloading.

Anpassungsfähigkeit ist das Schlüsselwort für die Zukunft des Höchstleistungsrechnens – vor allem, da sich die Technologie auf die Grenze des bislang Möglichen zu bewegt. Ob es um die Begrenzung der Energieversorgung und der natürlichen Ressourcen, um die physikalischen Grenzen eines herkömmlichen CPU-Chips, um die Grenzen der Datenverwaltung oder der Flexibilität von bestehenden Codes geht – diese Herausforderungen zwingen das Höchstleistungsrechnen dazu, sich neu zu erfinden und potenziell noch leistungsfähiger zu werden. Mithilfe der Forschungs- und Ausbildungsinitiativen möchte das HLRS als Protagonist des Ökosystems diesen Wandel mitvorantreiben.

Christopher Williams