Lücken füllen für schnellere Simulationen
Informatiker der TU Chemnitz entwickeln im Rahmen des Bundesexzellenzclusters MERGE neues Verfahren zur Verteilung paralleler Simulationen in heterogenen Rechenclustern
Im Bundesexzellenzcluster MERGE arbeiten Wissenschaftler der TU Chemnitz an der Entwicklung neuer Leichtbaustrukturen, erforschen neue Werkstoffe und Herstellungsprozesse. Im MERGE-Forschungsfeld „Modellieren, Integrative Simulation und Optimierung“ (IRD F) beschäftigen sich Maschinenbauer, Mathematiker und Informatiker aktuell damit, den gesamten Produktentstehungsprozess computergestützt vorhersagen zu können und so aufwändige Testreihen nach dem Prinzip Versuch-und-Irrtum zu vermeiden. Die dafür benötigten Simulationsprogramme sollen möglichst schnell und mit geringem Speicherbedarf arbeiten.
Große Rechenzentren in Unternehmen und Forschungseinrichtungen bestehen häufig aus einer Vielzahl verschiedener, komplexer Rechnersysteme, sogenannten heterogenen Clustern, die unterschiedliche Kapazitäten und Speicherleistungen aufweisen. Um diese vorhandenen Ressourcen gleichzeitig und effizient nutzen können, werden die Rechenprogramme für Simulationen auf die Rechner aufgeteilt. Mithilfe sogenannter Schedulingverfahren werden dafür Ablaufpläne (engl. Schedules) erzeugt, die eine Verteilung der Simulationen auf die vorhandenen Rechnersysteme angeben. Ziel ist es dabei, im Vorfeld der Berechnungen einen Schedule zu ermitteln, bei dem die Gesamtlaufzeit aller Simulationen möglichst gering ist.
Bisher existierende Verfahren sind für die Verteilung solcher Simulationsberechnungen auf mehrere Rechensysteme in einem Cluster nur unzureichend geeignet. So unterscheidet sich das reale Laufzeitverhalten der eingesetzten Simulationsverfahren oft deutlich von den getroffenen Annahmen der Scheduling-Verfahren. Das liegt vor allem daran, dass die Simulationen aufgrund der hohen Datenmengen nur in beschränktem Maße durch zusätzliche Rechenressourcen (z.B. Prozessorkerne) beschleunigt werden können. Für die Bauteiloptimierung von Leichtbaustrukturen im Bundesexzellenzcluster MERGE sind zudem viele unterschiedliche Simulationen notwendig, was die Laufzeit der Berechnungen zusätzlich erhöht. Deshalb ist die Gesamtlaufzeit in der Praxis oft deutlich länger als angenommen und die Cluster werden nur ineffizient genutzt.
Ein Team der Professur Praktische Informatik der TU Chemnitz untersuchte unter Führung von Prof. Dr. Gudula Rünger gezielt diese Nachteile und entwickelte daraus ein neues Verfahren. Ergebnis ist das sogenannte Water-Level scheduling. Der Name basiert auf der Darstellung der Reihenfolge und Verteilung einzelner Simulationen in einem Balkenplan, auch Gantt-Diagramm genannt. Robert Dietze vom Forschungsteam erklärt die Vorgehensweise des Verfahrens so: „Bildlich gesprochen werden die bestehenden Lücken mit Simulationen aufgefüllt, die bisher noch nicht verteilt waren. Man setzt also die Balkenlandschaft ‚unter Wasser‘ und nutzt so alle Kapazitäten aus.“
Zusätzlich zur reinen Verteilung der Simulationen auf die Rechnersysteme wird mit dem Verfahren auch ermittelt, ob bzw. ab wann es günstiger ist, eine hohe Anzahl an Simulationen mit geringer Parallelität (d. h. entsprechend langsam) oder eine geringe Anzahl an Simulationen mit hoher Parallelität (d. h. entsprechend beschleunigt) auszuführen. „Unser Water-Level-Verfahren modelliert damit nicht nur die Gesamtlaufzeit, sondern integriert auch die parallelen Laufzeiten der Einzelsimulationen“, so Dietze weiter.
Mit Hilfe dieses neu entwickelten Verfahrens können die Schwächen existierender Schedulingverfahren behoben werden. Die angenommene Laufzeit entspricht stärker der tatsächlich erreichten. Außerdem berücksichtigt das Water-Level-Prinzip die unterschiedlichen Rechenleistungen der verwendeten Rechnersysteme und plant damit effizienter. So ist es auch möglich, eine Vielzahl unterschiedlicher Rechnersysteme, z. B. heterogene Cluster, flexibel für simulationsbasierte Bauteiloptimierungen einzusetzen und optimal zu nutzen.
Die Wissenschaftler haben ihre Ergebnisse im Journal of Supercomputing veröffentlicht:
Dietze, R.; Hofmann, M.; Rünger, G.: Water-Level scheduling for parallel tasks in compute-intensive application components. Journal of Supercomputing, Special Issue on Sustainability on Ultrascale Computing Systems and Applications 2016, S. 1-22
DOI: 10.1007/s11227-016-1711-1
(Autorin: Jana Mischke)
Mario Steinebach
17.11.2016