GPU-Programmierung
Was ist ein üblicher Richtwert für die Zahl der Threads pro Block in CUDA?
- AEin Vielfaches der Warp-Größe von 32 (z. B. 128 oder 256)
- BStets 1
- CStets eine Primzahl
Antwort und Erläuterung anzeigen
Antwort: A. Ein Vielfaches der Warp-Größe von 32 (z. B. 128 oder 256)
Die Threads eines Blocks werden in Warps zu je 32 aufgeteilt; bei z. B. 100 Threads nutzt der letzte Warp nur 4 Threads, und die Ausführungsplätze der übrigen 28 sind verschwendet. Bei einem Vielfachen von 32 sind alle Warps voll ausgelastet. In der Praxis werden häufig etwa 128 bis 256 Threads verwendet und unter Beachtung von Occupancy und Nutzung des Shared Memory angepasst.