Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parallel processing 现代GPU(如Fermi/Evergreen)是否支持无序执行?_Parallel Processing_Cpu_Gpu - Fatal编程技术网

Parallel processing 现代GPU(如Fermi/Evergreen)是否支持无序执行?

Parallel processing 现代GPU(如Fermi/Evergreen)是否支持无序执行?,parallel-processing,cpu,gpu,Parallel Processing,Cpu,Gpu,我正在写一个OpenCL内核,它在一个循环中包含了一些障碍。我在CPU(8核FX8150)上测试了内核,结果显示这些障碍将运行速度降低了50~100倍(我通过使用多线程+CyclicBarrier在Java上重新实现内核进一步验证了这一点)。我怀疑原因是屏障基本上阻止了CPU利用无序执行的优势,所以我有点担心如果我在GPU上观察到同样大小的速度下降。我查阅了一些官方文件,在谷歌上搜索了一下,但是关于这个话题的信息很少 英伟达的下一代 CUDA计算与图形体系结构,代号为“Fermi”: 具有以下功

我正在写一个OpenCL内核,它在一个循环中包含了一些障碍。我在CPU(8核FX8150)上测试了内核,结果显示这些障碍将运行速度降低了50~100倍(我通过使用多线程+CyclicBarrier在Java上重新实现内核进一步验证了这一点)。我怀疑原因是屏障基本上阻止了CPU利用无序执行的优势,所以我有点担心如果我在GPU上观察到同样大小的速度下降。我查阅了一些官方文件,在谷歌上搜索了一下,但是关于这个话题的信息很少

英伟达的下一代
CUDA计算与图形体系结构,代号为“Fermi”:

具有以下功能(第5页)

  • 应用程序上下文切换速度提高10倍
  • 并发内核执行
  • 无序线程块执行:)
  • 双重叠内存传输引擎

目前最先进的GPU是有序的流水线处理器。GPU通过交错来自不同扭曲(波前)的指令有效地填充管道。相比之下,CPU使用无序推测执行来填充管道。有不同的功能单元,如ALU和SFU,它们具有分离的管道。但请注意,指令依赖性会阻碍扭曲。有关在GPU上解析指令依赖关系的更多信息,请参阅

当然有。您应该通过代码将fpu计算所花费的时间进行非均匀分割,这样它可以在同时进行浮点运算的同时进行整数计算time@tuğrulbüyükıkık谢谢。你能给我指一份证实这一点的官方文件(供参考)吗?