多平台 OpenCL 应用程序

Multiplatform OpenCL application

我正在寻找可以加快我的应用程序计算速度的技术(C++,测量数据处理)。 OpenCL 似乎是一个很好的解决方案。 但是对于不同的平台(ATI GPU、NVidea GPU 和 Intel),有不同的库和不同的运行时。

我能否创建一个可以在 NVidea GPU、ATI GPU 和 Intel 中正确处理的实现?或者我需要为每个平台创建不同的实现?

我能做吗:

void ComputeIt();

或者我需要创建:

void ComputeItAMD();
void ComputeItIntel();
void ComputeItNVidea();

???

谢谢!

只需要写一次。这就是 OpenCL 的重点;写一次,运行随处!

这些库用于供应商的 OpenCL 实施。例如。如果你有 AMD 卡,下载 AMD 库,Nvidia 卡,下载 Nvidia 的库等...