Forschungsbericht 2017 - Gesellschaft für wissenschaftliche Datenverarbeitung mbH Göttingen (GWDG)

Numerisch intensive Simulationen auf einer integrierten Recheninfrastruktur

Autoren

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

Abteilungen

High Performance Computing, eScience

Zusammenfassung
Cloud-Dienste, High-Performance-Computing-(HPC-)Cluster, Rechner mit speziellen Beschleunigerkarten? Die Auswahl der optimalen Anwendung und Rechenressource ist ein Erfolgskriterium für wissenschaftliche Simulationen. In Anbetracht der heterogenen Infrastruktur moderner Rechenzentren ist dies oftmals nicht einfach. Das Erlernen der technischen Details ist zeitaufwendig. Ziel des im Jahr 2016 angelaufenen Kooperationsprojekts der GWDG und des Simulationswissenschaftlichen Zentrums Clausthal-Göttingen ist, Auswahl und Bereitstellung der Ressource zu automatisieren.

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.

Literaturhinweise

Hofmann, S.; Bufe, A.; Brenner, G.; Turek, T.
Pressure drop study on packings of differently shaped particles in milli-structured channels
Chemical Engineering Science 155, 376-385 (2016)
Limmer, S.; Srba, M.; Fey, D.
Performance investigation and tuning in the interoperable cloud4e platform
Lopes L. u.a. (Hrsg.) European Conference on Parallel Processing, Parallel Processing Workshops, Euro-Par 2014, Porto, Portugal, 25.-26.08. 2014, Lecture Notes in Computer Science 8806 85-96 (2014)
Ober, I.; Palyart, M.; Bruel, J.-M.; Lugato, D.
On the use of models for high-performance scientific computing applications: an experience report
Software & Systems Modeling, 1-24 (2016)
Ardagna, D.; Di Nitto, E.; Casale, G.; Petcu, D.; Mohagheghi, P.; Mosser, S.; Matthews, P.; Gericke, A.; Ballagny, C.; D’Andria, F. et al.
MODAClouds: A model-driven approach for the design and execution of applications on multiple clouds
Proceedings of the 4th international workshop on modeling in software engineering, MISE 2012, Zürich, Schweiz, 2.-3.06.2012, 50-56 (2012)
Glaser, F.
Domain Model Optimized Deployment and Execution of Cloud Applications with TOSCA
Grabowski, J.; Herbold, S. (Hrsg.), Proceedings of the 9th International Conference, SAM 2016, Saint-Melo, Frankreich, 3.-4.10. 2016, System Analysis and Modeling Technology-Specific Aspects of Models, 68-83 (2016)
Zur Redakteursansicht