Speed, Speed, Speed – …GPU, die Lösung?

Motivation

Durch den Import von 3D CAD-Konstruktionen in COMSOL Multiphysics® werden die Anforderungen an Simulationsmodelle immer höher. Die Konsequenz ist ein immer höherer Rechenbedarf für die Bearbeitung komplexer 3D-Modell, der auch zu einer höheren Bearbeitungszeit führt.

Wie lassen sich komplexe 3D-Simulationsmodelle wirksam beschleunigen?

Seit der COMSOL Multiphysics® Version 6.4 wird GPU Computing mit dem Direktlöser cuDSS unterstützt und somit für die meisten multiphysikalischen Anwendungsfälle nutzbar.

Für große 3D Simulationsmodelle nutzen wir leistungsstarke Workstations. Wie macht sich die GPU-Beschleunigung bemerkbar? Für die Tests kam in einer Workstation mit 2 x Intel® XEON® Gold 6426Y mit 512GB RAM eine NVIDIA RTX Pro 4000 Blackwell GPU zum Einsatz.

Das 3D-Simulationsmodell ist ein strukturmechanisches Kontaktproblem mit ca. 2.5 Millionen DOFs + 8.5Millionen internal DOFs. Der Lösungsprozess wird im Wesentlichen durch das Constraint Handling und die Matrix Faktorisierung dominiert, die weiterhin durch die beiden XEON® Prozessoren ausgeführt werden. Wieviel Nutzen bringt die GPU-Beschleunigung?

Vergleich

PARDISO

In der Standard-Konfiguration wird das Modell mit dem Direktlöser PARDISO gerechnet. Für das Lösen eines Auxiliary-Sweeps mit fünf Schritten benötigt der Nichtlineare Löser 243.2s. Nachfolgende Grafik zeigt die gesamte Zeit des Lösungsprozesses und die summierte Zeit der einzelnen Zwischenschritte, die für das Lösen des Gleichungssystems erforderlich sind.

 

Rechenzeit mit PARDISO

 

cuDSS

Für die GPU-Beschleunigung wird der Direktlöser cuDSS genutzt. Aufgrund der Speicheranforderung wird der Hybrid-Modus des Solvers aktiv gesetzt. Für das Lösen des Auxiliary-Sweeps mit fünf Schritten benötigt der Nichtlineare Löser mit cuDSS 192.7s. Nachfolgende Grafik zeigt die gesamte Zeit des Lösungsprozesses und die summierte Zeit der einzelnen Zwischenschritte, die für das Lösen des Gleichungssystems erforderlich sind.

Rechenzeit mit cuDSS (GPU)

Nachfolgende Grafik zeigt, dass sich die CPUs optimal mit der GPU abwechseln. Beide Recheneinheiten machen einen guten Job!

Leistung von CPU und GPU

Fazit

Durch den Einsatz einer GPU kann der Lösungsprozess in dem Simulationsmodell um den Faktor 1.3 beschleunigt werden. Klingt nicht viel, ist aber viel beim mehrmaligen Rechnen großer Modelle.

Das Lösen des linearen Gleichungssystems ist nur ein Anteil des gesamten Lösungsprozesses. Durch eine detaillierte Analyse des Lösungsprozesses kann man sich einen Überblick über den Nutzen der GPU-Beschleunigung für ein konkretes Modell verschaffen. Der Nutzen ist modellabhängig.

Da die GPU nur einer CPU zugeordnet ist, wird in dem getesteten System zukünftig noch eine 2. GPU verbaut werden, um die volle Performance der GPU-Beschleunigung in COMSOL Multiphysics® nutzbar zu machen.

Wir sind bereit für große anspruchsvolle 3D Simulationen!

Vielleicht interessiert dich auch…

Beliebte Beiträge