我知道有一个OpenCL C++ API,但是我在编译内核时遇到了问题... 内核必须用C语言编写吗?然后只能允许使用C++编写主机代码?还是有一些我没有发现的用C++编写内核的方法?具体来说,我正在尝试使用pyopencl编译我的内核,但它似乎失败了,因为它将它们编译为C代码。
我知道有一个OpenCL C++ API,但是我在编译内核时遇到了问题... 内核必须用C语言编写吗?然后只能允许使用C++编写主机代码?还是有一些我没有发现的用C++编写内核的方法?具体来说,我正在尝试使用pyopencl编译我的内核,但它似乎失败了,因为它将它们编译为C代码。
您可以在sycl.tech网站上找到有关SYCL的信息,新闻,博客,视频和资源。
供参考,还有Boost.Compute。它不能帮助你处理pyopencl,但它解决了pyopencl的许多问题,并具有一些元编程魔法,可帮助在C++中编写OpenCL内核。
这个SO问题(在Boost.Compute FAQ中引用)还包含了一些关于OpenCL对开发人员施加的相关设计约束的很好的讨论。