Mehrere Threads, die denselben Wert am selben globalen Speicherort schreiben

8

Diese Frage ist eng verwandt mit dieses , aber meins gehört der CUDA Welt.

Ich habe mehrere Threads in meinem Kernel, die den gleichen Wert am selben globalen Speicherort schreiben könnten. Das hat gut geklappt, aber ich befürchte, dass es möglicherweise ein Pseudo sein könnte und dass ich bisher nur Glück gehabt habe.

Besteht die Möglichkeit von Speicherbeschädigung oder unerwartetem Verhalten in meinem Workflow (aufgrund von Datenrennen, Cache-Synchronisierung usw.)?

    
Auron 07.12.2011, 13:50
quelle

1 Antwort

7
  

Ich habe mehrere Threads in meinem Kernel, die den gleichen Wert am selben globalen Speicherort schreiben könnten.

Im Gegensatz zu einigen der Kommentare ist dies sicher. Mit sicher, ich meine, dass der geschriebene Wert in diesem globalen Speicherort angezeigt wird. Es gibt keine Möglichkeit, dass ein Schreiben nicht auftritt, und es gibt keine Möglichkeit einer anderen falschen Datenverfälschung. Toms Antwort hier ist darauf anwendbar.

Wenn andere -Werte geschrieben werden, wird einer der Werte an dieser Position enden, aber der Wert ist nicht definiert.

    
Robert Crovella 29.03.2014, 17:14
quelle

Tags und Links