答案 0 :(得分:3)
ld.global.cg
指令[有关详细信息,请参阅here]。答案 1 :(得分:0)
我不知道之前是否可能,但CUDA 8.0为您提供了微调特定读/写缓存的可能性。有关详细信息,请参阅PTX manual。
例如,要使此代码始终在read:
上转到主内存const float4 val = input[i];
您可以写下以下内容:
float4 val;
const float4* myinput = input+i;
asm("ld.global.cv.v4.f32 {%0, %1, %2, %3}, [%4];" : "=f"(val.x), "=f"(val.y), "=f"(val.z), "=f"(val.w) : "l"(myinput));
我设法使用非缓存的读写操作加速了我的一个缓存密集型内核大约20%,这些读取和写入只能通过设计访问一次