Detailseite
FMhub - Eine Plattform zur Bereitstellung schneller Multipol-Löser für die Wissenschaft
Antragsteller
Dr. Ivo Kabadshow; Professor Dr.-Ing. Matthias Werner
Fachliche Zuordnung
Sicherheit und Verlässlichkeit, Betriebs-, Kommunikations- und verteilte Systeme
Rechnerarchitektur, eingebettete und massiv parallele Systeme
Softwaretechnik und Programmiersprachen
Statistische Physik, Nichtlineare Dynamik, Komplexe Systeme, Weiche und fluide Materie, Biologische Physik
Rechnerarchitektur, eingebettete und massiv parallele Systeme
Softwaretechnik und Programmiersprachen
Statistische Physik, Nichtlineare Dynamik, Komplexe Systeme, Weiche und fluide Materie, Biologische Physik
Förderung
Förderung seit 2021
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 443189148
Computersimulationen sind zur dritten Säule in der Wissenschaft geworden und verbinden Theorie und Experiment. Da heutzutage die Simulationsperformance durch eine Steigerung der Parallelität und nicht durch die Erhöhung der Taktfrequenz herrührt, ist nachhaltiges Softwaredesign zwingend erforderlich. Trotzdem gibt es Bestandteile in einem Simulationscode, die mehr Aufwand als Andere erfordern. In MD-Simulationen ist die Berechnung der elektrostatischen Interaktionen am aufwendigsten. D.h., eine effiziente Berechnung dieser Coulomb-Wechselwirkungen ist entscheidend für die gesamte Simulation. In den letzten Jahrzehnten wurden zahlreiche Simulationspakete (z.B. GROMACS, DL_POLY, LAMMPS) entwickelt. Durch den rapiden Anstieg an komplexer und hierarchisch-paralleler Hardware, sowie das Aufkommen von Beschleunigern (z.B. GPUs) wird es für die Entwickler solcher Simulationscodes immer schwieriger, hohe Performance in allen Teilen des Codes zu erhalten. In den letzen Jahren haben daher viele Communities den Ansatz der monolithischen Applikation verworfen und wenden sich mehr zu Lösungen, die aus einer Sammlung von hoch-spezialisierten Komponenten besteht. Teilprobleme können daher ausgelagert werden und von Bibliotheken mit wohldefinierten Interfaces behandelt werden. In diesem Projekt zielen wir darauf ab, eine quell-offene schnelle Multipol-Methode (FMM) für die wissenschaftliche Gemeinschaft als flexible C++ Bibliothek mit dem Namen FMSolvr zur Berechnung langreichweitiger Wechselwirkungen bereitzustellen. Wir werden daher Komponenten von FMSolvr aus der derzeitigen Applikation herauslösen, um einen größeren Bereich molekulardynamischer Simulationscodes abzudecken. Der Quellcode wird zusammen mit üblichen Community-Werkzeugen wie Versionierung, Bugtracker, kontinuierlichen Integration und Bereitstellung wie auch einer ausführlichen Dokumentation zur Verfügung gestellt, um anderen externen Nutzern die Anpassung zu erleichtern. Interoperabilität mit einiger dieser Anwendungen wird durch das Verfügbarmachen von zusätzlichen Schnittstellen realisiert. Neben der direkten Anbindung zwischen FMSolvr und der Zielanwendung, wird ebenfalls das bereits vorhandene Interface der ScaFaCoS (Scalable Fast Coulomb Solver) Bibliothek bereitgestellt. Damit können Anwendungen, die bereits das ScaFaCoS-Interface benutzen, unsere Bibliothek als Plugin verwenden. Neben den erweiterten Interfaces wird auch die Parallelisierungsschicht angepasst. Die drei zentralen Teile (CPU-, Innerknoten-, Zwischenknoten-Parallelisierung) werden entkoppelt, um Wartbarkeit und Portabilität zu steigern. Die Aufteilung und Austauschbarkeit der drei Parallelisierungsschichten wird es uns erlauben, zukünftige Parallelisierungsansätze wie z.B. Vektorisisierungsbibliotheken oder alternative Taskingansätze zu nutzen. Die Modularisierung zielt ebenfalls auf die Entkopplung algorithmischer Komponenten ab um die Flexibilität der Bibliothek zu erhöhen.
DFG-Verfahren
Sachbeihilfen
Mitverantwortlich
Dr. Holger Dachsel