CPU vs GPU

In den vergangenen Jahren ist vermehrt über das Thema Leistungssteigerung durch die Verwendung von GPUs berichtet worden. Bei zeitaufwändigen Berechnungen, wie etwa CFD-Simulationen, klingen die beworbenen Geschwindigkeitssteigerungen verlockend, können aber auch durchaus Probleme mit sich bringen.

Das durch Parallelisierung zu erschliessende Potential ist zur Zeit Entwicklungsziel sowohl der traditionellen CPU-Entwickler als auch der Entwickler von Grafikkarten. Wahrend die universell nutzbaren CPUs immer mehr Kerne erhalten, werden die eigentlich sehr eingeschränkt nutzbaren GPUs immer universeller anwendbar. Letzteren wurde teilweise ein Geschwindigkeitsvorteil um einen Faktor zwischen 10x und 1.000x nachgesagt. Dabei erfolgte der Vergleich jedoch häufig mit Single-Core-CPUs.

Wissenschaftler von Intel haben das Thema jetzt genauer untersucht und die Ergebnisse ihrer Arbeit veröffentlicht: Debunking the 100X GPU vs. CPU Myth: An Evaluation of Throughput Computing on CPU and GPU

Der erreichbare Geschwindigkeitszuwachs erreicht dabei bis zu einem beachtlichen Faktor von 14.9, liegt allerdings teilweise unter 1x. Der für FDS zumindest teilweise aussagekräftige Teil des Benchmarks FFT liegt bei 3x.

Grundsätzlich ist das Thema komplex: um die Rechenleistung moderner GPUs effektiv nutzen zu können bedarf es intensiver Optimierungsarbeit. Sobald beispielsweise die Kommunikation zwischen GPU und CPU zunimmt, drohen starke Geschwindigkeitseinbußen. Bei dem zur Zeit auf einer GPU zur Verfügung stehenden Speicher, kann dies zu einem Problem werden. Des Weiteren hat Herr Rogsch im Rahmen seiner Arbeit an einer Parallelisierung mittels OpenMP bereits darauf hingewiesen dass einige Modelle in FDS zur Zeit aufgrund ihres Aufbaus praktisch keine Parallelisierung zulassen.

WordPress Cookie Hinweis von Real Cookie Banner