Rund 150 neue Konzepte für MPI
Computerracks von SuperMUC-NG
Neuerungen für Supercomputer auf Software und auf Hardware-Ebene verändern auch Programmiersprachen und Standards. Im Sommer wurde das vierte Major-Release des Message Passing Interface (MPI) veröffentlicht. In rund 150 neuen Funktionen beinhaltet es grundlegend neue Konzepte für den Nachrichtenaustausch zwischen Rechenknoten und damit zur Steigerung der Leistung von High Performance Computern (HPC). Die ersten praktischen Erfahrungen mit dem Standard MPI 4 waren während der EuroMPI21 ein Thema, doch der Fortschritt treibt weiter: Anwender:innen und Forschende diskutierten während der Konferenz im September schon das nächste Leistungslevel und wie MPI auf die kommende Generation der Exascale-Systeme vorbereitet werden kann. Mit einem internationalen Team stellten Prof. Dr. Martin Schulz, Inhaber des Lehrstuhls Rechnerarchitektur und parallele Systeme der Technischen Universität München, und Dr. Martin Ruefenacht, Mitarbeiter des Leibniz-Rechenzentrums (LRZ), das Programm der EuroMPI21 zusammen. Sie berichten über die Neuerungen und die Zukunft von MPI.
Wie lief die EuroMPI21? Dr. Martin Ruefenacht: Insgesamt sehr gut – an der EuroMPI nahmen mehr als 120 Leute teil, am folgenden MPI-Forum zur Standardisierung mehr als 45 Leute. Das sind Rekordzahlen, die sicher durch das virtuelle Format begünstigt wurden. Prof. Dr. Martin Schulz: Die EuroMPI war dieses Jahr kürzer geplant – ein Konferenz-Tag auf zwei Nachmittage verteilt. Die Inhalte waren stärker auf die MPI Standardisierung ausgerichtet. Das kam offensichtlich sehr gut an. Der zweite Tag war von den Themen Remote Access Memory und die MPI Sessions geprägt, beide spielen für die Zukunft von MPI eine große Rolle. Daraus ergaben sich interessante und lebhafte Diskussionen über zukünftige Konzepte.
Wichtigstes Thema war sicher die Major-Version 4 von MPI … Schulz: MPI 4 stellt einen wichtigen Meilenstein dar und führt rund 150 grundlegend neue Konzepte und Methoden ein, zum Beispiel wie die Persistent Collectives, die Large-Counts- und die Partitioned Communication oder neue Bausteine für Fehlertoleranz sowie die MPI Sessions oder das neue Interface für Leistungsanalysen. Welche Möglichkeiten sie für Nutzer:innen und neue Codes bringen, wurde natürlich intensiv diskutiert. Aber MPI 4 ist erst seit Juni 2021 im Einsatz – für eine umfassende Beurteilung von Vor- und Nachteilen war es wohl noch zu früh, daher rückten eher Ideen für die Version 5 in den Vordergrund.
Was hat Sie als Veranstalter und Organisatoren am meisten überrascht? Warum? Ruefenacht: Eigentlich ist die EuroMPI ist eine vergleichsweise kleine Konferenz, dafür war die Zahl der Teilnehmenden dieses Jahr überraschend hoch. Vermutlich konnten nachmittags und online mehr Leute als nur diejenigen zuhören, die während des MPI-Forums Standardisierungen diskutieren. Schulz: Durch die Einreichungen hatten sich zwei inhaltliche Schwerpunkte gebildet: Remote Memory Access mit MPI und Erweiterungen zum neuen Konzept der MPI-Sessions. Das hatten wir so zwar nicht erwartet, aber in den Beiträgen war schon auszumachen, in welche Richtungen sich MPI entwickeln könnte. Sehr spannend.
Wie geht es weiter mit MPI – gibt es schon Ideen für das MPI 5 und wann ist damit zu rechnen? Ruefenacht: Natürlich gibt es schon Ideen, MPI4 weiter zu entwickeln. Aber bis zur nächsten Major-Version wird es mehrere Jahre dauern. Das MPI-Forum konzentriert sich gerade auf die Version MPI 4.1, die so etwas wie eine Aufräumaktion darstellt. Wir werden dafür die Sprache verbessern, Unklares verdeutlichen und korrigieren und vielleicht noch ein paar wenige, neue Funktionen hinzufügen. Zur Vorbereitung von MPI 5 beteilige ich mich an einer Arbeitsgruppe für Programmiersprachen. MPI 5 könnte für mehr Sprachen als C oder FORTRAN spezifiziert werden. Zurzeit liegt der Fokus auf C++, weil immer mehr HPC-Anwendungen darauf aufbauen und daher die Nachfrage nach einer guten Schnittstelle zu MPI wächst. Schulz: Zusätzlich sehen wir neue Ansätze für die Themen Remote Memory Access, MPI-Sessions und für Bereichen wie die Partitioned Communication. Diese werden sich positiv auf Programmierungen auswirken, die gleichzeitig GPU und CPU ansprechen und bringen außerdem noch neue Schnittstellen zur Leistungssteigerung und für Debugging-Werkzeuge. Es geht also bei MPI ständig weiter.
Prof. Dr. Martin Schulz, TUM und LRZ und Dr. Martin Rüfenacht, LRZ