グローバル メモリへの最初の読み出しまたは書き込み要求は、時間およびリソースを多く費やしますが、後続の演算はそうではありません。データをバースト転送すると、メモリ アクセスのレイテンシが隠され、帯域幅の使用率およびメモリ コントローラーの効率が改善します。
グローバル メモリへのアトミック アクセスは、絶対に必要な場合以外は使用しないようにしてください。ロードおよびストア関数は、常にバースト トランザクションを推論するようにコード記述する必要があります。これには、GitHub の例の vadd.cpp ファイルに示すように memcpy
演算を使用するか、アプリケーションの開発 の インターフェイス に説明されているように必要なすべての値に順次アクセスする厳密な for
ループを作成します。