2

我希望将 OpenCL 库用于需要分发到许多(1000 台)机器的程序。因为程序的大小是一个问题,所以我想知道静态链接 OpenCL 库是否有意义。OpenCL 的轻量级是否足以满足此应用程序?

4

1 回答 1

5

您不能真正静态链接 OpenCL,但是您可以静态链接 OpenCL ICD(可安装客户端驱动程序)。ICD 将动态加载所有本地可用的 OpenCL 平台。

ICD 实现依赖于操作系统,但运行良好,并得到主要供应商 SDK(AMD、NVIDIA、Intel 等)的支持。多亏了 ICD,您可以使用 AMD SDK 编译二进制文件,但同样的二进制文件也适用于 NVIDIA 和 Intel OpenCL。

ICD 也应该对您的问题非常有用,因为二进制文件将只包含非常少量的代码(即仅动态加载本地 OpenCL 平台的代码)。

于 2013-07-03T19:18:15.660 回答