执行 openCL 的 cuda 包装器

A cuda wrapper to execute openCL

我参与了一个必须进行 gpu 编程的项目,我的限制之一是在 nvidia 设备(因此在 CUDA 中)上进行。 但我无法访问配备 nvidia gpu 的设备。

所以我想知道是否存在任何包装器可以让我编写 CUDA 代码但作为 openCL 代码执行以使其在 amd gpu 上运行?

ps:如果我不必在 windows 系统上这样做,gpuocelot 可能很适合。

你可以看看GPU Ocelot。根据其网站:

Ocelot currently allows CUDA programs to be executed on NVIDIA GPUs, AMD GPUs, and x86-CPUs at full speed without recompilation.

"CUDA" 约束是真实的吗?因为 NVIDIA 硬件上的 GPU 编程并不一定意味着 CUDA。您还有其他可能的解决方案,例如:

如果是我,代码允许,我会尝试使用 Thrust 进行开发。但这取决于你。