Parallele Gleichungslöser für die linearen TRACE-Module Dr. Achim Basermann, Dr. Hans-Peter Kersken Abteilung Verteilte Systeme und Komponentensoftware DLR Simulations- und Softwaretechnik Dr. Christian Frey Abteilung Numerische Methoden DLR Institut für Antriebstechnik Software-Innovationen für die Luftfahrtforschung Abschiedskolloquium für Prof. Dr. Ulrich Trottenberg DLR Braunschweig, 20.04.2010 Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Übersicht Motivation Die „Distributed Schur Complement”-Methode (DSC) Komplexe und reelle Problemformulierung Experimente mit TRACE-Matrizen Fazit Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Das parallele Simulationssystem TRACE TRACE: Turbo-machinery Research Aerodynamic Computational Environment Entwickelt vom Institut für Antriebstechnik des DLR in Zusammenarbeit mit MTU Aero Engines Berechnet die Innenströmung in Turbomaschinen Nutzt die Methode der Finiten Volumen mit blockstrukturierten Gittern Die linearen TRACE-Module erfordern die parallele, iterative Lösung großer, dünnbesetzter, unsymmetrischer Gleichungssysteme. Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Parallele Gleichungslöser in TRACE: Hintergrund Module linearTRACE bzw. adjointTRACE A unsymmetrisch, komplex bzw. reell, dünnbesetzt Paralleler iterativer Löser: (F)GMRes mit Präkonditionierung Dominiert das Zeitverhalten deutlich Matrix-Vektor und Vektor-Vektor-Operationen Präkonditionierung gewöhnlich am aufwendigsten Kritisch für die Skalierbarkeit Status: Block-lokale Präkonditionierung ILU, SSOR Skalierbarkeit begrenzt Ziel: Globaler, skalierbarer Präkonditionierer Tests mit DSC-Methoden Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
DSC-Methode (1) Verteilte Matrix, 2 Prozessoren Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
DSC-Methode (2) DSC-Algorithmus Schema auf jedem Prozessor Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Präkonditionierung im DSC-Algorithmus DSC-Methode (3) Präkonditionierung im DSC-Algorithmus Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
DSC-Methode (4): Einfluss der Partitionierung Graph-Partitionierung: ParMETIS (University of Minnesota) Ziel: Minimiere die Anzahl der geschnittenen Kanten Minimiere die Anzahl der Kopplungsvariablen Ungerichteter Graph Symmetrisieren der Matrix-Struktur Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Matrix-Experimente: Relle oder komplexe Arithmetik? Komplexe TRACE-Marix (n=28120; nz=1246200; Kond.: 6,7·106) Reelle TRACE-Matrix (n=56240; nz=2572040; Kond.: 8,4·106) Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
DSC-Präkonditionierer: Matrix-Permutation (komplex) Hintergrund: Fill-in-Reduzierung für ILUT-Präkonditionierung Original Minimum Degree (MD) Reverse Cuthill-McKee (RCM) Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
ILU-Präkonditionierer: Fill-in in L und U (komplex) MATLAB: ILUT-Präkonditionierung; Threshold = 10-3 Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
ILU-Präkonditionierer: Matrix-Permutation (reell) Hintergrund: Fill-in-Reduzierung für ILUT-Präkonditionierung Original Minimum Degree (MD) Reverse Cuthill-McKee (RCM) Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
ILU-Präkonditionierer: Fill-in in L und U (reell) MATLAB: ILUT-Präkonditionierung; Threshold = 10-3 Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Performance: Komplexe oder reelle Arithmetik? MATLAB: ILUT-Präkonditionierung; Threshold = 10-3; |Rel. Residuum| < 10-10 Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Performance auf dem AeroGrid-Cluster des DLR (Doppelprozessor-Knoten; Quad-Core Intel Harpertown; 2,83 GHz) DSC-Methode, reelle versus komplexe Problemformulierung Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
DSC-Methode: Performance (reell) (Doppelprozessor-Knoten; AMD Opteron 250; 2,4 GHz) DSC-Methode versus Block-Jacobi-Präkonditionierung (mit RCM) Bei hoher Prozessorzahl lohnt sich der bessere Präkonditionierer. Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Fazit Permutation (MD, RCM) entscheidend für ILUT-Performance; leichte Vorteile für RCM (höhere Lokalität) Komplexe Rechnung deutlich schneller als reelle (höhere Lokalität, besseres Verhältnis von Rechnung zu Speicherzugriffen) DSC-Methode lässt höhere Skalierbarkeit als Block-lokale Verfahren erwarten. Aussicht Entwicklung eines „intelligenten“ Lösers für TRACE mit problem- und konvergenzabhängiger Parametersteuerung und Präkonditionierung Einsatz der DSC-Methode als globaler Glätter in Mehrgitterverfahren Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010
Fragen? Software-Innovationen für die Luftfahrtforschung > Achim Basermann > Parallele Gleichungslöser > 20.04.2010