gpt4 book ai didi

cuda - NVIDIA GPU 支持分支预测? (使用 OpenACC)

转载 作者:行者123 更新时间:2023-12-02 08:25:31 26 4
gpt4 key购买 nike

我正在使用带有 OpenACC 的 NVIDIA GPU(NVIDIA GeForce960,编译器:PGI 15.7)

NVIDIA GPU 是否支持分支预测?我的代码在长循环中有条件执行代码。但是当我在 GPU 上运行我的代码时,它需要很长时间。

下面是示例代码。

#pragma acc parallel loop
for(i=0; i<1000; i++) // NVIDIA GPU kernel with OpenACC
for(j=0; j<1000; j++)
if(a[i][j]==value)
// do something...
else if(a[i][j]==value2)
// do another something...
else
// do another something...

如果这段代码在CPU上编译运行,CPU会对条件执行循环做分支预测。NVIDIA GPU 是否具有与 CPU 的分支预测相同或相似的技能?

如果有,我该如何启用它?

附加问题:

PGI 15.7 编译器是否可以为 GPU 编译优化代码?我知道通常的编译器(gcc...等)可以使用优化技巧进行编译,例如更改条件代码执行顺序。

最佳答案

Is NVIDIA GPU has same or similar skills like CPU's branch prediction?

当前的 NVIDIA GPU 不支持分支预测。

Is PGI 15.7 compiler can compile optimized code for GPU?

是的,PGI 工具可以执行各种优化。这是通过 -Ox 命令行开关(例如 -O3)在高级别进行控制的,就像 gcc/g++ 一样。这种优化可以发生在编译的各个阶段,例如 OpenACC 源代码到 CUDA PTX 的转换,以及 CUDA PTX 到 CUDA SASS 的转换。

关于cuda - NVIDIA GPU 支持分支预测? (使用 OpenACC),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32599011/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com