我刚刚用JCUDA开发了我的第一个程序(在eclipse上),我想在其他机器上执行它,这些机器没有我用来开发它的nvidia驱动程序和编译器。
如何将可执行文件导出到另一台机器并在不重新编译代码的情况下执行它?
如有任何帮助,不胜感激
(对不起,如果您希望得到一个分步手册,这可能无法完全回答您的问题。我会考虑在这里做一些实验,可能会扩展这个答案或在网站上添加信息)
对于驱动程序API,目标系统上的CUDA版本必须至少是相应的JCuda版本-否则,新的CUDA功能将根本不支持。
关于运行时库,引用CUDA FAQ:
问:分发CUDA应用程序需要什么?
使用驱动API的应用程序只需要CUDA驱动程序库("nvcuda.dll"在Windows下),它是作为标准NVIDIA驱动程序安装的一部分。
使用运行时API的应用程序也需要运行时库("cudart.dll"在Windows下),它包含在CUDA工具包中。根据CUDA工具包中包含的最终用户许可协议条款,允许将此库与您的应用程序一起分发。
因此,如果有疑问,您可以包括"cudart.dll"用于将应用程序编译到发行包中的。
新版本的CUDA还支持针对运行时DLL的静态链接,但这还没有为JCuda运行时库完成。