Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我希望将 OpenCL 库用于需要分发到许多(1000 台)机器的程序。因为程序的大小是一个问题,所以我想知道静态链接 OpenCL 库是否有意义。OpenCL 的轻量级是否足以满足此应用程序?
您不能真正静态链接 OpenCL,但是您可以静态链接 OpenCL ICD(可安装客户端驱动程序)。ICD 将动态加载所有本地可用的 OpenCL 平台。
ICD 实现依赖于操作系统,但运行良好,并得到主要供应商 SDK(AMD、NVIDIA、Intel 等)的支持。多亏了 ICD,您可以使用 AMD SDK 编译二进制文件,但同样的二进制文件也适用于 NVIDIA 和 Intel OpenCL。
ICD 也应该对您的问题非常有用,因为二进制文件将只包含非常少量的代码(即仅动态加载本地 OpenCL 平台的代码)。