GPU-Programmierung
Welche Aussage zur Occupancy der GPU ist richtig?
- ABei 100 % Occupancy wird stets die höchste Leistung erzielt
- BAuch bei niedriger Occupancy kann hohe Leistung erreicht werden, wenn jeder Thread viele unabhängige Berechnungen ausführt und so die Befehlsparallelität steigt
- CDie Occupancy hat überhaupt keinen Einfluss auf die Leistung
Antwort und Erläuterung anzeigen
Antwort: B. Auch bei niedriger Occupancy kann hohe Leistung erreicht werden, wenn jeder Thread viele unabhängige Berechnungen ausführt und so die Befehlsparallelität steigt
Occupancy ist ein Mittel, Latenzen zu verbergen, kein Ziel. Kann ein Thread mehrere voneinander unabhängige Berechnungen oder Speicherlesezugriffe hintereinander ausgeben, lässt sich die Wartezeit auch mit wenigen Warps füllen. Umgekehrt kann es langsamer werden, wenn zur Steigerung der Occupancy die Register verringert werden und dadurch mehr in den Speicher ausgelagert wird. Verlässlich ist es, die Leistung durch tatsächliche Messung mit einem Profiler zu beurteilen.