Gefördert durch die

 

Beschreibung

Verschiedene Lastbalancierungs-Strategien am 2D-Beispiel: kd-Bäume, Diffusion, raumfüllende Kurven, graphbasierte Lastbalancierung, kartesisches Gitter mit Topologieerhaltung

Die Simulation von Systemen mit großen Teilchenzahlen gehört zu den echten Herausforderungen des Höchstleistungsrechnens. Die Liste der Finalisten des renommierten Gordon Bell Preises und viele siegreiche Beiträge der letzten Jahre zeigen die Relevanz solcher Simulationen. Insbesondere die Skalierbarkeit von Simulationen gestaltet sich als anspruchsvoll, bedingt durch die Hardwareentwicklung seit etwa 2004: An die Stelle immer höherer Taktraten tritt eine immer größere Zahl an Prozessoren und mittlerweile auch an Beschleunigerkarten. Die Simulation von großen Teilchenzahlen erfordert erwartungsgemäß einen erheblichen Rechenaufwand. Um akzeptable Antwortzeiten zu erlangen, muss dieser folglich auf viele Prozessoren verteilt werden. Die Parallelisierungen derartiger Simulationsszenarien ist daher ein integraler Bestandteil der Forschung des SFBs.

Damit solche Parallelisierungen effizient laufen, reicht es aber nicht aus, die Daten und Berechnungen zu verteilen. Fast alle Simulationsszenarien benötigen regelmäßige Synchronisationspunkte (z.B. jeweils nach einer bestimmten Anzahl an Zeitschritten). Diese bilden globale Beziehungen ab und erfordern globale Kommunikation. Hierbei muss stets auf den langsamsten Prozess gewartet werden. Um lange Wartezeiten zu vermeiden, muss die Verteilung der Last gleichmäßig sein; es wird gute Lastbalancierung benötigt. Mit steigender Anzahl Prozesse verschärft sich das Problem, da mehr Prozesse auf den langsamsten warten.

In homogenen Szenarien kann meist mittels Zerlegung in gleichmäßige Gebiete eine gleichmäßige Lastverteilung gewährleistet werden, da bei solchen Szenarien meist ein linearer Zusammenhang zwischen Größe und Last besteht. Für heterogenen Szenarien, wie sie im SFB z.B. für Agglomerationsprozesse oder bei der Laserablation untersucht werden, genügt dies jedoch nicht. Ähnliches gilt für gekoppelte Szenarien, besonders wenn lokale Adaptivität verwendet wird, um den dynamischen Charakter der Simulationsszenarien in der Diskretisierung abzubilden.

Um in der dritten Förderperiode großskalige Simulationen jenseits des bisher Erreichten realisieren zu können, soll in diesem Teilprojekt dieser wichtige Baustein entwickelt und umgesetzt werden. Strategien für die Lastbalancierung sollen hinsichtlich der für den Gesamtverbund relevanten Szenarien grundlegend erforscht und die Grenzen des im Idealfall Erreichbaren ausgelotet werden. Schnelle und zuverlässige Verfahren zur Schätzung der Rechenlast müssen entwickelt werden, um effiziente Rebalancierung in dynamischen Simulationen zu ermöglichen. Schließlich sollen für ausgewählte Anwendungen des SFBs spezifische Lastbalancierungsverfahren entworfen und gemeinsam mit den entsprechenden Teilprojekten umgesetzt werden.