CUDA: Was ist verstreut schreiben?

8

Verschiedene CUDA-Demos im CUDA SDK beziehen sich auf "gestreutes Schreiben". Was ist das verstreute Schreiben und warum ist es so großartig? Im Gegensatz zu was steht es?

    
shoosh 18.10.2009, 19:12
quelle

2 Antworten

5

Ich werde hier die CUDA-Terminologie verwenden.

scattered write bedeutet, dass Sie von jedem cuda-Thread an eine beliebige Adresse schreiben (dh, die Threads Ihrer Warp-Datei schreiben nicht im fortlaufenden Speicher, z. B.). Es steht im Gegensatz zu Frame-Buffer-Schreibvorgängen, die 2d-kohärent sind und durch die Hardware zusammengeführt werden können. Das waren die einzigen Schreibvorgänge, die bis vor nicht allzu langer Zeit für GPUs verfügbar waren.

Sie sind die entgegengesetzte Operation von gather read , die Daten von einer verstreuten Position liest und alle vor dem Warp von Threads sammelt, die auf SIMD-Weise auf den gesammelten Daten ausgeführt werden. Sammeln Lesezugriffe sind jedoch seit langem auf GPUs durch beliebige Texturabruf verfügbar.

    
Bahbar 18.10.2009 19:36
quelle
5

Streuschreiben ist großartig, weil Sie damit in jede Speicheradresse schreiben können. Frühere Shader-Implementationen waren normalerweise in den Speicheradressen begrenzt, in die ein bestimmtes Shader-Programm schreiben konnte.

"Während Fragmentprogramme in Grafik-APIs nur 32 Floats (RGBA * 8 Renderziele) an einer vorgegebenen Stelle ausgeben können, unterstützt CUDA verstreute Schreibvorgänge - dh eine unbegrenzte Anzahl von Speichern an beliebige Adressen. Dies ermöglicht viele neue Algorithmen das war mit Grafik-APIS nicht möglich, um mit CUDA "

effizient zu arbeiten

Aus der CUDA FAQ:

Ссылка

Im Grunde macht es CUDA-Programme einfacher zu schreiben, da sie nicht so eingeschränkt sind, wo sie Ergebnisse schreiben können. Denken Sie daran, dass einer der Schlüssel zum Erzielen einer guten Leistung auf einer GPU das Ausnutzen von Speicherlokalität ist. Die Verwendung von verstreuten Schreibvorgängen durch häufiges Schreiben in den globalen Speicher wird sich sehr wahrscheinlich auf Ihre Leistung auswirken.

    
Ade Miller 19.10.2009 17:05
quelle

Tags und Links