我在设置一个实验时遇到了困难,我在设备上使用 CUDA 分配内存,将该指针指向设备上的内存,在 OpenCL 中使用它,然后返回结果。我想看看这是否可能。我很难让一个 CUDA 项目工作,所以我只是在他们的 SDK 中使用了 Nvidia 的模板项目。在 makefile 中,我将 -lOpenCL 添加到 common.mk 的 libs 部分。当我这样做时一切都很好,但是当我添加#include <CL/cl.h>
到 template.cu 以便我可以开始进行 OpenCL 调用时,我得到了 100 多个错误。它们看起来都与此相似,但末尾有不同的函数名称:
/usr/lib/gcc/x86_64-linux-gnu/4.4.1/include/xmmintrin.h(334):错误:标识符“__builtin_ia32_cmpeqps”未定义
我很难弄清楚为什么。如果可以的话请帮忙。此外,如果有更简单的方法来设置能够调用 CUDA 和 OpenCL API 的项目,请告诉我。