Monolithic Multi-level Overlapping Schwarz Solvers for Fluid Problems
Dieser Beitrag stellt Ergebnisse zur parallelen Skalierbarkeit bis zu 32.768 MPI-Rängen für die Lösung inkompressibler Strömungsprobleme unter Verwendung von monolithischen überlappenden Schwarz-Vorkonditionierern mit zwei und drei Ebenen vor, die durch die Kopplung der FROSch-Bibliothek innerhalb von Trilinos mit der FEATFLOW-Bibliothek erreicht wurden.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich vor, Sie versuchen, ein riesiges, unglaublich komplexes Puzzle zu lösen. Dieses Puzzle repräsentiert die Strömung einer Flüssigkeit (wie Wasser oder Luft), die durch ein Rohr oder ein Maschinenteil fließt. In der Welt der Informatik wird dies als „Problem der Strömungsmechanik" bezeichnet. Das Puzzle ist so groß, dass ein einzelner Computer, egal wie schnell er ist, es allein in angemessener Zeit nicht lösen kann.
Um dies zu bewältigen, verwenden Wissenschaftler eine Strategie namens Gebietszerlegung. Stellen Sie sich dies vor wie das Zerschneiden des riesigen Puzzles in kleinere, handhabbare Teile, wobei jedes Teil einem anderen Arbeiter (einem Computerprozessor) übergeben wird, um es gleichzeitig zu lösen.
Das Problem mit der „Zwei-Ebenen"-Strategie
In diesem Papier arbeiten die Autoren, Stephan Köhler und Oliver Rheinbach, an einer speziellen Art von Puzzle-Löser namens Monolithischer überlappender Schwarz-Präkonditionierer.
So funktionierte ihre vorherige „Zwei-Ebenen"-Methode:
- Die Arbeiter: Sie teilten das Strömungsproblem in viele kleine Teilgebiete auf (wie 512 oder 4.096 Teile). Jeder Arbeiter löst sein kleines Teil.
- Der Chef: Um sicherzustellen, dass alle Teile perfekt zusammenpassen, gibt es einen „Chef" (genannt Grober Raum). Der Chef betrachtet die Ränder, an denen die Teile zusammentreffen, und sendet Anweisungen an die Arbeiter zurück, um etwaige Fehler zu korrigieren.
Der Engpass: Als sie mehr Arbeiter hinzufügten (bis zu 32.768!), wurde der „Chef" überfordert. Der Chef musste so viele Informationen verwalten, dass der Computer, auf dem der Chef lief, den Speicher aufbrauchte und abstürzte. Es war, als würde man versuchen, einen Manager zu haben, der 32.000 Mitarbeiter überwacht; der Manager konnte einfach nicht mithalten.
Die Lösung: Die „Drei-Ebenen"-Hierarchie
Der Durchbruch der Autoren bestand in der Einführung eines Drei-Ebenen-Systems. Anstatt einen überforderten Chef zu haben, schufen sie eine Management-Hierarchie:
- Ebene 1 (Die Arbeiter): Die einzelnen Computer lösen ihre kleinen lokalen Teile.
- Ebene 2 (Teamleiter): Diese Computer lösen etwas größere Gruppen von Teilen.
- Ebene 3 (Die Exekutive): Eine kleine, handhabbare Gruppe von „Managern" löst das allerhöchste Problem.
Die Analogie: Stellen Sie sich eine riesige Baustelle vor.
- Zwei-Ebenen: Sie haben 32.000 Maurer und einen Vorarbeiter, der versucht, allen direkt Anweisungen zu geben. Der Vorarbeiter bekommt eine Migräne, und die Baustelle kommt zum Stillstand.
- Drei-Ebenen: Sie haben 32.000 Maurer, 256 Vorarbeiter und 8 Oberaufseher. Die Oberaufseher sprechen mit den Vorarbeitern, die mit den Maurern sprechen. Die Arbeitslast wird verteilt, und das System stürzt nicht ab.
Was sie tatsächlich taten
Die Autoren testeten dieses neue „Drei-Ebenen"-System in zwei spezifischen Szenarien:
- Der Einheitswürfel: Ein einfaches, kastenförmiges Rohr.
- Die Extrusionsdüse: Ein komplexes, verdrehtes industrielles Maschinenteil (wie eine Form zur Herstellung von Kunststoffformen).
Sie verwendeten eine Softwarebibliothek namens FROSch (Teil des Trilinos-Pakets), um die Mathematik zu handhaben, und FEATFLOW, um die Strömungsmodelle zu erstellen. Sie führten diese Tests auf einem Supercomputer mit bis zu 32.768 Prozessoren (MPI-Ranks) durch.
Die Ergebnisse
- Das Zwei-Ebenen-Versagen: Als sie versuchten, das einfache Kastenproblem mit 32.768 Prozessoren unter Verwendung der alten Zwei-Ebenen-Methode zu lösen, wurde der „Chef" (das grobe Problem) zu groß, um gelöst zu werden. Der Computer lief den Speicher aus, und der Vorgang scheiterte.
- Der Drei-Ebenen-Erfolg: Mit dem neuen Drei-Ebenen-System lösten sie das Problem erfolgreich mit 32.768 Prozessoren.
- Geschwindigkeit: Für die komplexe industrielle Form war das Drei-Ebenen-System etwa 6-mal schneller beim Einrichten der Lösung als das Zwei-Ebenen-System.
- Skalierbarkeit: Das System blieb stabil und effizient, selbst als sie immer mehr Prozessoren hinzufügten, während das alte System kollabiert wäre.
Zusammenfassung
Dieses Papier handelt vom Aufbau einer besseren „Managementstruktur" für Computer, die Strömungsprobleme lösen. Durch das Hinzufügen einer zusätzlichen Managementebene (von zwei Ebenen zu drei) ermöglichten die Autoren Tausenden von Computern, an riesigen, komplexen Strömungspuzzles zusammenzuarbeiten, ohne dass der zentrale Koordinator überfordert wurde. Dies ist ein entscheidender Schritt hin zur Ausführung dieser Simulationen auf zukünftigen „Exascale"-Supercomputern, die noch mehr Prozessoren haben werden als wir heute.
Hinweis: Das Papier konzentriert sich strikt auf die mathematische Leistung und Geschwindigkeit dieser Löser bei bestimmten Testformen. Es behauptet nicht, ein spezifisches medizinisches Problem oder ein neues industrielles Produkt gelöst zu haben, sondern liefert vielmehr den schnelleren Motor, der eventually für solche Aufgaben verwendet werden könnte.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.