是否可以 运行 没有安装 CUDA 驱动程序的 CUDA 程序或库?
Is it possible to run CUDA program or library without CUDA driver installed?
假设我有一台装有 nvcc
和 CUDA 工具包的笔记本电脑,以及一个由 16 台配备 Nvidia GPU 和 MPI 的 PC 组成的网络。 PC 不知道 CUDA,它们只有常规的 Nvidia 驱动程序和支持软件。
我想为这个网络开发一个 MPI 应用程序。 PC 将通过 MPI 获取任务并使用它们的 GPU 来完成这些任务。我计划在我的笔记本电脑上开发 CUDA 部分,在静态库中编译它,然后在 PC 上使用 mpicxx
编译器 link 这个静态库。
但是,我找不到任何证据表明这种部署是可行的。相反,大多数所谓的单独编译的例子require CUDA installed for the final step(linking CUDA-aware static library with MPI-aware main program):
$ g++ main.cpp -L. -lgpu -o main -L/usr/local/cuda/lib64 -lcudart
那么,是否可以编译使用 CUDA 并且没有任何依赖项(如已安装的驱动程序和 CUDA 库)的程序或库?
如果将 cuda 运行时动态库与可执行文件一起部署,一切都应该有效。
同时,确保您在目标机器上安装了足够新的驱动程序。
假设我有一台装有 nvcc
和 CUDA 工具包的笔记本电脑,以及一个由 16 台配备 Nvidia GPU 和 MPI 的 PC 组成的网络。 PC 不知道 CUDA,它们只有常规的 Nvidia 驱动程序和支持软件。
我想为这个网络开发一个 MPI 应用程序。 PC 将通过 MPI 获取任务并使用它们的 GPU 来完成这些任务。我计划在我的笔记本电脑上开发 CUDA 部分,在静态库中编译它,然后在 PC 上使用 mpicxx
编译器 link 这个静态库。
但是,我找不到任何证据表明这种部署是可行的。相反,大多数所谓的单独编译的例子require CUDA installed for the final step(linking CUDA-aware static library with MPI-aware main program):
$ g++ main.cpp -L. -lgpu -o main -L/usr/local/cuda/lib64 -lcudart
那么,是否可以编译使用 CUDA 并且没有任何依赖项(如已安装的驱动程序和 CUDA 库)的程序或库?
如果将 cuda 运行时动态库与可执行文件一起部署,一切都应该有效。
同时,确保您在目标机器上安装了足够新的驱动程序。