Comparing and modelling the performance of different ML frameworks and hardware accelerators in a coupled OpenFoam+ML application
- Vergleich und Modellierung der Leistung verschiedener ML-Frameworks und Hardwarebeschleuniger in einer gekoppelten OpenFoam+ML-Applikation
Brose, Kim Sebastian; Müller, Matthias S. (Thesis advisor); Hasse, Christian (Thesis advisor); Orland, Fabian (Consultant)
Aachen : RWTH Aachen University (2022)
Masterarbeit
Masterarbeit, RWTH Aachen University, 2022
Kurzfassung
Wir untersuchen und modellieren die Leistung einer mit Machine Learning gekoppelten HPC Anwendung. Sie basiert auf einer reaktiven Thermo-Fluid-Simulation, welche durch den Speicherbedarf einer dem Stand der Technik entsprechenden Implementierung mit einer Wertetabelle limitiert ist.ML ist ein altes Konzept, das in den letzten Jahren durch die Entwicklung leistungsstarker ultraparalleler Prozessoren mit Vektorisierungsfähigkeit vorangetrieben wurde, denn diese können die Berechnung von für ML Algorithmen typischen Matrixoperationen beschleunigen. Die Implementierung mit Wertetabelle wird durch ein ML Modell ersetzt, indem sie durch Kopplungen, welche die bestehende Software mit verschiedenen ML Frameworks verknüpfen, ausgetauscht wird. Zum Vergleich implementieren wir Kopplungen mit bekannten und verbreiteten sowie vielversprechenden neuartigen Frameworks, welche teils unterschiedliche Hardware, darunter CPUs, GPUs und Vector Engines, oder Herangehensweisen unterstützen. Wir messen und modellieren die Leistung der verschiedenen Kopplungen unter verschiedenen Bedingungen. Wenn wir das ML Modell vergrößern, steigt die benötigte Laufzeit wesentlich langsamer als die quadratisch wachsende Komplexität der Rechnung. Die wiederholte Ausführung der Inferenz für verschiedene Eingangsdaten kann durch Stapelverarbeitung beschleunigt werden, wenn die Stapelgröße so gewählt wird, dass der resultierende Arbeitsaufwand die unteren sowie oberen Grenzen der spezifischen Hardwarearchitektur des benutzten Gerätes berücksichtigt. Wir prüfen die Leistung der Kopplungen auf starke Skalierbarkeit nach Amdahl. Der ML Teil der Applikation ist de facto komplett datenparallel und skaliert entsprechend optimal durch Hinzufügen weiterer Prozessoren. Der Mehraufwand durch die Kommunikation steigt, wenn wir dem HPC-Teil der gekoppelten Applikation mehr MPI Prozesse geben, aber ist im Allgemeinen vernachlässigbar im Vergleich zur eigentlichen Laufzeit des ML Frameworks. Obwohl die Berechnung auf GPUs schneller ist, entdecken wir, dass es unter gewissen Umständen effizienter sein kann, den ML Teil auf CPUs auszuführen. Mit unserem ML Modell erreichen die GPUs am ehesten ihre Spitzenleistung, gefolgt von CPUs, während die Vector Engines am weitesten davon entfernt sind. Wir untersuchen die vom EU Center of Excellence POP etablierten Leistungsmetriken als Modell für unsere gekoppelte HPC+ML-Applikation in den verschiedenen Skalierungsszenarios. Die Kopplungen haben alle eine verhältnismäßig geringe Laufzeit im Vergleich zur gesamten Applikation und daher keinen klar erkennbaren Einfluss auf die für die ganze Applikation gemessenen Metriken. Eine genauere Analyse wird benötigt um eindeutigere Ergebnisse zu liefern.
Einrichtungen
- IT Center [022000]
- Fachgruppe Informatik [120000]
- Lehrstuhl für Informatik 12 (Hochleistungsrechnen) [123010]
Identifikationsnummern
- DOI: 10.18154/RWTH-2022-06845
- RWTH PUBLICATIONS: RWTH-2022-06845