【发布时间】:2019-10-09 19:03:34
【问题描述】:
所以我试图隐藏全局内存延迟。取以下代码:
for(int i = 0; i < N; i++){
x = global_memory[i];
... do some computation on x ...
global_memory[i] = x;
}
我想知道从全局内存中加载和存储是否阻塞,即在加载或存储完成之前它不会运行下一行。比如下面的代码:
x_next = global_memory[0];
for(int i = 0; i < N; i++){
x = x_next;
x_next = global_memory[i+1];
... do some computation on x ...
global_memory[i] = x;
}
在这段代码中,x_next 直到下一次迭代才使用,那么加载 x_next 是否与计算重叠?换句话说,会发生以下哪些数字?
【问题讨论】: