2 research outputs found
Accelerating the Conjugate Gradient Algorithm with GPUs in CFD Simulations
International audienceThis paper illustrates how GPU computing can be used to accelerate computational fluid dynamics (CFD) simulations. For sparse linear systems arising from finite volume discretization, we evaluate and optimize the performance of Conjugate Gradient (CG) routines designed for manycore accelerators and compare against an industrial CPU-based implementation. We also investigate how the recent advances in preconditioning, such as iterative Incomplete Cholesky (IC, as symmetric case of ILU) preconditioning, match the requirements for solving real world problems
Real-Time Simulation and Prognosis of Smoke Propagation in Compartments Using a GPU
The evaluation of life safety in buildings in case of fire is often based on
smoke spread calculations. However, recent simulation models – in general,
based on computational fluid dynamics – often require long execution
times or high-performance computers to achieve simulation results in or
faster than real-time.
Therefore, the objective of this study is the development of a concept
for the real-time and prognosis simulation of smoke propagation in compartments
using a graphics processing unit (GPU). The developed concept
is summarized in an expandable open source software basis, called
JuROr (JĂĽlich's Real-time simulation within ORPHEUS). JuROr simulates
buoyancy-driven, turbulent smoke spread based on a reduced modeling
approach using finite differences and a Large Eddy Simulation turbulence
model to solve the incompressible Navier-Stokes and energy equations.
This reduced model is fully adapted to match the target hardware
of highly parallel computer architectures. Thereby, the code is written
in the object-oriented programming language C++ and the pragma-based
programming model OpenACC. This model ensures to maintain a single
source code, which can be executed in serial and parallel on various
architectures.
Further, the study provides a proof of JuROr's concept to balance sufficient
accuracy and practicality. First, the code was successfully verified
using unit and (semi-) analytical tests. Then, the underlying model was
validated by comparing the numerical results to the experimental results
of scenarios relevant for fire protection. Thereby, verification and validation
showed acceptable accuracy for JuROr's application. Lastly, the
performance criteria of JuROr – being real-time and prognosis capable
with comparable performance across various architectures – was successfully
evaluated. Here, JuROr also showed high speedup results on a GPU
and faster time-to-solution compared to the established Fire Dynamics
Simulator. These results show JuROr's practicality.Die Bewertung der Personensicherheit bei Feuer in Gebäuden basiert häufig
auf Berechnungen zur Rauchausbreitung. Bisherige Simulationsmodelle
– im Allgemeinen basierend auf numerischer Strömungsdynamik –
erfordern jedoch lange AusfĂĽhrungszeiten oder Hochleistungsrechner, um
Simulationsergebnisse in und schneller als Echtzeit liefern zu können.
Daher ist das Ziel dieser Arbeit die Entwicklung eines Konzeptes fĂĽr
die Echtzeit- und Prognosesimulation der Rauchausbreitung in Gebäuden
mit Hilfe eines Grafikprozessors (GPU). Zusammengefasst ist das entwickelte
Konzept in einer erweiterbaren Open-Source-Software, genannt
JuROr (JĂĽlich's Real-time Simulation in ORPHEUS). JuROr simuliert
die Ausbreitung von auftriebsgetriebenem, turbulentem Rauch basierend
auf einem reduzierten Modellierungsansatz mit finiten Differenzen und
einem Large Eddy Simulation Turbulenzmodell, um inkompressible Navier-
Stokes und Energiegleichungen zu lösen. Das reduzierte Modell ist voll-
ständig angepasst an hochparallele Computerarchitekturen. Dabei ist der
Code implementiert mit C++ und OpenACC. Dies hat den Vorteil mit
nur einem Quellcode verschiedenste serielle und parallele AusfĂĽhrungen
des Programms für unterschiedliche Architekturen erstellen zu können.
Die Studie liefert weiterhin einen Konzeptnachweis dafĂĽr, ausreichende
Genauigkeit und Praktikabilität im Gleichgewicht zu halten. Zunächst
wurde der Code erfolgreich mit Modul- und (semi-) analytischen Tests verifiziert.
Dann wurde das zugrundeliegende Modell durch einen Vergleich
der numerischen mit den experimentellen Ergebnissen fĂĽr den Brandschutz
relevanter Szenarien validiert. Die Verifizierung und Validierung
zeigten dabei ausreichende Genauigkeit fĂĽr JuROr. Zuletzt, wurden die
Kriterien von JuROr – echtzeit- und prognosefähig zu sein mit vergleichbarer
Leistung auf unterschiedlichsten Architekturen – erfolgreich geprüft.
Zudem zeigte JuROr hohe Beschleunigungseffekte auf einer GPU und
schnellere Lösungszeiten im Vergleich zum etablierten Fire Dynamics Simulator.
Diese Ergebnisse zeigen JuROr's Praktikabilität