我参与了一个我必须进行gpu编程的项目,我的一个约束是在nvidia设备上进行(因此在CUDA中)。 但我无法访问配备nvidia gpu的设备。
所以我想知道是否存在任何可以允许我编写CUDA代码但是作为openCL代码执行以使其在amd gpu上运行的包装器?
ps:gpuocelot可以很好地适应我在Windows系统上不必这样做。
答案 0 :(得分:3)
“CUDA”约束是否属于实际约束?因为NVIDIA硬件上的GPU编程并不一定意味着CUDA。您有其他可能的解决方案,例如:
如果是我和代码允许,我会尝试使用Thrust进行开发。但这取决于你。
答案 1 :(得分:2)
您可以查看GPU Ocelot。根据其网站:
Ocelot目前允许CUDA程序全速在NVIDIA GPU,AMD GPU和x86-CPU上执行,无需重新编译。