Direkt zum Seiteninhalt springen

HELMHOLTZ extrem

Der schnellste Code der Laser-Plasmaphysik

PIConGPU in Aktion: Mit dem Code lässt sich die Ionendichte einer Probe bei der Laser-Ionenbeschleunigung exakt berechnen. Das anfangs (links) noch kugelförmige Target wird per Laser-Beschuss von oben zum Plasma aus frei beweglichen, geladenen Teilchen. Bild: HZDR/Axel Hübl

Superschnell, skalierbar und gratis – was als „Jugend forscht“-Projekt begann, ist heute einer der leistungsfähigsten Programmcodes für Berechnungen in der Astro- und Plasmaphysik.

Es gibt wenig, was die 18.688 Grafikkarten des amerikanischen Superrechners „Titan“ wirklich ins Schwitzen bringt – doch wenn Nachwuchs-Physiker des Helmholtz-Zentrums Dresden-Rossendorf  (HZDR) mit ihrem Code anrücken, muss auch der zweitschnellste Rechner der Welt zur Höchstform auflaufen. Mit einer Rekordleistung von 7,1 Billiarden Berechnungen pro Sekunde (PFLOPS) entstehen physikalische 3D-Modelle, die zeigen, welche Prozesse bei der Teilchenbeschleunigung mit Lasern ablaufen. Diese Erkenntnisse sollen helfen, Geräte für die Protonenstrahl-Therapie gegen Krebs kompakter und günstiger zu machen.

Solche aufwendigen 3D-Simulationen sind nötig, weil extrem komplexe Prozesse in sehr kurzen Zeiträumen untersucht werden: Wenn am HZDR-Institut für Strahlenphysik ein hunderte Billionen Watt starker Laser auf eine Folie trifft, entsteht ein Gemisch aus Billiarden von Elektronen und Ionen – ein Hoch-Energie-Plasma. Dieser Vorgang läuft in Femtosekunden-Bruchteilen ab, also ungefähr in der Zeit, in der ein Elektron den Atomkern umrundet. Um die Wechselwirkungen zwischen den Teilchen im Plasma in einem Modell darzustellen, braucht es viel Rechenpower und einen effizienten Programmcode. Die Grundlage liefert der am HZDR entwickelte Code PIConGPU: „Damit können wir selbst ein individuelles Teilchen unter 100 Milliarden Elektronen verfolgen und seinen Einfluss auf das Gesamtsystem berechnen“, erklärt Dr. Michael Bussmann, Leiter der Nachwuchsgruppe für Computergestützte Strahlenphysik.

Der Code basiert auf der sogenannten „Particle-in-Cell“-Methode (PIC): Dabei werden Differentialgleichungen gelöst, die die Wechselwirkung elektromagnetischer Felder mit geladenen Teilchen wie Elektronen und Ionen in einem  virtuellen räumlichen Gitter beschreiben. So erfahren die Plasmaphysiker, wie sich die Partikel in den Zellen des 3D-Gitters bewegen und auf die Felder zurückwirken. Doch die Dresdner Wissenschaftler lassen die PIC-Prozeduren nicht wie sonst üblich von normalen Hauptprozessoren durchführen, sondern nutzen die Recheneinheiten von Grafikkarten – sogenannte GPUs. Dieses GPU-Computing bietet einen entscheidenden Vorteil, wie Michael Bussmann erklärt: „Moderne Grafikkarten können viele Rechenschritte parallel ausführen und berechnen die Prozesse im Teilchen-Chaos des Plasmas daher schneller als Hauptprozessoren.“ Da der Supercomputer Titan ebenso wie das HZDR-Rechenzentrum auf GPUs setzt, konnte der Dresdner Code schnell für die Simulationen am amerikanischen Großrechner fit gemacht werden.  

Der Clou dabei ist die starke Skalierbarkeit des Codes. Das heißt, die Rechenleistung des Codes steigt proportional zur Anzahl der eingesetzten Grafikkarten. Keine Selbstverständlichkeit, wie Heiko Burau, Diplomand in Bussmanns Nachwuchsgruppe, betont: „Schon die kleinsten ungenutzten Wartezeiten bei der Datenverarbeitung führen dazu, dass ein Großteil der GPU-Leistung verpufft.“ Für eine maximale Leistung müssen die Grafikprozessoren also möglichst unabhängig voneinander arbeiten. Da tausende Karten gemeinsam an den Modellen rechnen, ergab sich somit eine Herausforderung: Wie kompensiert man die langsame Daten-Weitergabe zwischen den einzelnen Grafikkarten? Die simple, aber effektive Lösung: Schon während der Übertragung zu anderen Karten beginnen neue Berechnungen. So wird die Wartezeit sinnvoll genutzt und alle Grafikkarten arbeiten parallel.

Heiko Burau ist zugleich auch der Erfinder von PIConGPU: Nach einer Auszeichnung beim Schüler-Wettbewerb „Jugend forscht“ erhielt er 2009 die Möglichkeit, zu seinem Thema „Grafikkarten-Programmierung“ am HZDR zu forschen. Bereits nach sechs Wochen hatte er mit den anderen jungen Forschern der Gruppe die erste Version des Codes für eine Einzel-GPU programmiert. Schritt für Schritt entwickelte die Nachwuchsgruppe schließlich den heute leistungsfähigsten Code der Laser-Plasmaphysik.

Michael Bussmann lobt zudem die Flexibilität des Codes: „Ob kosmische Jets in der Astrophysik, die Untersuchung von lasergetriebener Fusion oder Laser-Teilchenbeschleunigung – unser Code kann mittlerweile fast alle Berechnungen durchführen in denen Hoch-Energie-Plasmen eine Rolle spielen.“ Das liegt nicht zuletzt daran, dass es ein Open-Source-Code ist, der von jedem Wissenschaftler kostenlos genutzt und für die eigene Forschung angepasst werden kann. Die HZDR-Forscher sind überzeugt, dass gegenseitiger Wissensaustausch die Entwicklung von PIConGPU noch weiter vorantreibt, weshalb sie offensiv auffordern: „Bitte klauen Sie diesen Code!“ 

Alle Ausgaben von HELMHOLTZ extrem

Leser:innenkommentare