次のようにストライド メモリ アクセスを実行するカーネルがあるとします。
__global__ void strideExample (float *outputData, float *inputData, int stride=2)
{
int index = (blockIdx.x * blockDim.x + threadIdx.x) * stride;
outputData[index] = inputData[index];
}
トランザクションに含まれる要素の半分が使用されない (無駄な帯域幅になる) ため、ストライド サイズ 2 でアクセスすると、ロード/ストア効率が 50% になることを理解しています。より大きなストライド サイズのロード/ストア効率を計算するにはどうすればよいでしょうか? 前もって感謝します!