Forschungsbericht 2017 - Gesellschaft für wissenschaftliche Datenverarbeitung mbH Göttingen (GWDG)
Numerisch intensive Simulationen auf einer integrierten Recheninfrastruktur
Brücher, Martina(1); Ehlers, Tim(1); End, Vanessa(1); Köhler, Christian(1); Korte, Fabian(2)
(1): Gesellschaft für wissenschaftliche Datenverarbeitung mbH Göttingen
(2): Universität Göttingen, Institut für Informatik
High Performance Computing, eScience
1. Kontext und Motivation
Die meisten Menschen kennen Simulationen aus den Forschungsfeldern Meteorologie oder Astronomie, zum Beispiel aus Wettervorhersagen oder Wissenschaftssendungen im Fernsehen. Aber auch in vielen anderen Disziplinen sind numerische Simulationen etabliert oder gewinnen zunehmend an Bedeutung [1]. Etwa Prognoseszenarien des Klimawandels basieren darauf.
In den Ingenieurwissenschaften werden Strömungsprozesse an Flugzeugtragflächen oder Fahrzeugen am Computer simuliert, in den Lebenswissenschaften chemische und elektrochemische Effekte. Was zunächst in der Erforschung der Zellbiologie Eingang fand, erlangt mehr und mehr Bedeutung in der Medizin, beispielsweise, um die Entstehung von Krankheiten oder Wirkweisen von Medikamenten auf zellulärer Ebene besser verstehen zu können. Bei wachsendem Bedarf ist mehr denn je geboten, Simulationen der unterschiedlichsten Anwendungsszenarien für die Nutzer komfortabler zu ermöglichen und die jeweiligen Ressourcen effizienter zu nutzen.
2. Der Weg zur optimalen Ressource
Am Anfang einer geplanten Simulation steht die Auswahl der optimalen Rechenressource, weil in vielen Fällen nicht jede Ressource die gewünschten Ergebnisse liefert. Je nach Dimensionierung der Simulation (oder sogar je nach Teilsimulation innerhalb einer Parameterstudie) kann ein anderer Ressourcentyp geeigneter sein, weil die benötigte Rechenleistung dies erfordert oder eine bestimmte Software nicht auf jeder Ressource läuft. Nicht jede Fachdisziplin beinhaltet das technische Detailwissen für die passende Auswahl. Eine weitere Hürde ist, dass die Handhabung der verschiedenen Rechenressourcen stark voneinander abweicht. Exemplarisch werden nachfolgend Cloud-Computing und High-Performance-Computing skizziert.
- Cloud-Computing ist ein Pool aus abstrahierter, hochskalierbarer und verwalteter IT-Infrastruktur, der eine dynamische Verlagerung der Rechenleistung ermöglicht. Hierbei muss der Nutzer im Stande sein, die passende Konfiguration vorzunehmen [2].
- High-Performance-Computing vereint enorme Rechenressourcen zur parallelen Berechnung durch den Zusammenschluss sehr vieler Rechenknoten über ein Hochgeschwindigkeitsnetz an einem Standort. Deshalb spricht man auch von Supercomputern. Zusätzlich stehen Beschleunigerkarten wie GPUs (Graphics Processing Units) zur Verfügung, die über ihren ursprünglichen Aufgabenbereich als Grafikprozessoren hinaus eingesetzt werden, um die Rechenleistung deutlich zu erhöhen, und so die Ausführungsgeschwindigkeit bei parallelen Algorithmen steigern. Fundierte Kenntnisse im Umgang mit Job-Scheduling-Systemen und das Beherrschen der entsprechenden Parallelisierungs-Frameworks sind entscheidend [3].
Insgesamt präsentiert sich dem Simulationswissenschaftler also eine Barriere in Form zusätzlich zu erlernender technischer Details, was viel Zeit verschlingen kann. Hier setzt das Forschungsvorhaben an.
3. Die Lösung: Ein Distributions-Controller
Der sogenannte Distributions-Controller vermittelt auf einer zusätzlichen Abstraktionsschicht automatisiert zwischen den Bedürfnissen des Anwenders und den Kapazitäten und Anwendungsmöglichkeiten der verschiedenen Rechenressourcen. In Abbildung 2 sind die einzelnen Schritte des Prozesses hin zur optimalen Simulation in Schichten abstrahiert.
Der Wissenschaftler, der eine Simulation durchführen will, startet auf einer nutzerfreundlichen Plattform, die in der Abbildung als Benutzeroberfläche bezeichnet ist. Es handelt sich dabei um eine grafische Entwicklungsumgebung. Hier muss ein Anwendungsmodell [4] für die Simulation definiert werden, wofür Hilfefunktionen zur Verfügung stehen.
Anschließend wird das Modell an den Distributions-Controller weitergeleitet. Dieser übernimmt die Abbildung der Anwendung auf den geeigneten Ressourcentyp. Hierbei wird das Anwendungsmodell in ein ressourcenspezifisches Eingabemodell für das Zielsystem transformiert. Dieses Eingabemodell wird dann an den Ressourcenmanager des idealen Zielsystems übergeben, der die Anwendung auf der korrespondierenden Infrastruktur ausführt. In der Abbildung 2 sind der Übersicht halber nur eine Cloud-Umgebung und ein HPC-Cluster, gegebenenfalls mit Nutzung von Beschleunigerkarten, dargestellt. Die Architektur ist jedoch so konzipiert, dass weitere Ressourcen integriert werden können, wie zum Beispiel Grid-Computing, das insbesondere für Anwender aus der (Astro- und Teilchen-)Physik relevant ist, oder zukünftige technische Entwicklungen.
Um Besonderheiten bei der Auswahl möglicher HPC-Rechenressourcen zu modellieren, ist anstelle einer direkten Transformation des Applikations- zum Ausführungsmodell eine Repository-basierte Architektur vorgesehen. Diese ermöglicht es den HPC-Administratoren, das Modell eines Ressourcentyps (z. B. für die zum Betrieb benötigte Software) mit der Konfiguration der vorhandenen Installation im Rechenzentrum zu ergänzen und im Anschluss über das Repository für die Simulationswissenschaftler verfügbar zu machen.
Durch die kombinierte Zugriffsmöglichkeit auf Cloud-Dienste und HPC-Ressourcen können die Bereitstellung und Ausführung der Simulation automatisiert werden. (Korte, F.; Bufe, A.; Köhler, C.; Brenner, G., Grabowski, J.; Wieder, P. Transparent Model-Driven Provisioning of Computing Resources for Numerically Intensive Simulations, in Communications in Computer and Information Science, Manuskript eingereicht.)
4. Ausblick
Die Cloud-basierte Softwarekomponente SimPaaS (Simulation Platform-as-a-Service) für die automatisierte Handhabung von Cloud-Ressourcen für Simulationsanwendungen ist bereits erstellt [5]. Der Distributions-Controller befindet sich in der Entwicklung. Die Ergebnisse des Forschungsprojekts werden von der GWDG dokumentiert und nach Projektende Anfang 2019 in eine Produktivumgebung überführt.