GPU-Programmierung

Welche Aussage zum Unterschied in der Entwurfsphilosophie von CPU und GPU ist richtig?

  1. ADie CPU legt mit vielen einfachen Kernen Wert auf Durchsatz, die GPU beschleunigt mit wenigen leistungsstarken Kernen eine einzelne Aufgabe
  2. BCPU und GPU unterscheiden sich nur im Namen, der Aufbau ist gleich
  3. CDie CPU legt mit wenigen leistungsstarken Kernen Wert darauf, eine einzelne Aufgabe schnell abzuschließen, die GPU legt mit vielen einfachen Recheneinheiten Wert auf den Gesamtdurchsatz
Antwort und Erläuterung anzeigen

Antwort: C. Die CPU legt mit wenigen leistungsstarken Kernen Wert darauf, eine einzelne Aufgabe schnell abzuschließen, die GPU legt mit vielen einfachen Recheneinheiten Wert auf den Gesamtdurchsatz

Die CPU verwendet Schaltungen für große Caches, Sprungvorhersage, Out-of-Order-Ausführung usw., um einen einzelnen Thread möglichst schnell voranzubringen. Die GPU vereinfacht solche Schaltungen, ordnet dafür viele Recheneinheiten an und führt Tausende Threads gleichzeitig aus, um den Gesamtdurchsatz zu erhöhen. Auch wenn jeder einzelne Thread langsam ist, ist die GPU bei Aufgaben, die dieselbe Verarbeitung auf große Datenmengen anwenden, um ein Vielfaches schneller.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu GPU-Programmierung

  1. Welches Merkmal beschreibt Aufgaben, die sich auf der GPU schnell verarbeiten lassen, am besten?
  2. Welche Verarbeitung läuft auf der GPU tendenziell ineffizient?
  3. Welche Aussage zum „Kernel“ in der GPU-Programmierung, etwa mit CUDA, ist richtig?
  4. Welche Kombination der Thread-Hierarchie in CUDA ist richtig (von groß nach klein)?
  5. In einem CUDA-Kernel wird die Nummer i jedes Threads mit der oben gezeigten Formel bestimmt. Welchen Wert hat i für den Thread mit blockIdx.x=2, blockDim.x=256 und threadIdx.x=5?

Vergleiche zu diesem Thema