メモリ内の1つの場所に同じ値を書き込もうとしているスレッドが複数ある場合、競合状態になる可能性はありますか?書き込み中にデータが何らかの形で破損する可能性はありますか?先行する読み取りまたはテスト条件はなく、書き込みのみです。
編集:明確にするために、私はGPUでドット積を計算しています。複数のスレッドを使用して個々の製品を計算し(行/列要素ごとに1つのスレッド)、それらをメモリ内の一時的な場所に保存しています。次に、それらの中間製品を合計して結果を保存する必要があります。
GPUで分岐するとパフォーマンスが低下する可能性があるため、すべてのスレッドでこの合計/ストア操作を個別に実行することを考えていました。(単一のスレッドで実行された場合でも、すべてのスレッドで実行された場合でも、合計/ストアに同じ時間がかかると思いますが、これをテストしたところ、パフォーマンスにわずかな影響があります。)すべてのスレッドで同じ合計が得られます。 、しかし、それぞれがメモリ内の同じ場所に回答を書き込もうとする場合の競合状態が心配です。私が行った限られたテストでは、すべてがうまくいくように見えますが、私はまだ緊張しています...