1

我最近发现有一种方法可以使用带有 CUDA 的 OpenJ9 来利用 GPU 性能。但现在我仍然面临问题。我的 PC 上确实安装了最新版本的 CUDA 以及当前版本的 OpenJ9。此外,我使用此页面上编写的内容来设置我的环境:
https://www.ibm.com/support/knowledgecenter/SSYKE2_8.0.0/com.ibm.java.vm.80.doc/docs/gpu_enabling。 html

不幸的是,即使我认为所有 PATH 变量都设置正确,我也无法在我的 GPU 上执行任何处理。即使我在运行程序时打开了日志记录过程,我收到的唯一反馈是这些信息:

[IBM GPU JIT]:  Dynamic linking error: Unable to locate NVML library nvml.dll
[IBM GPU JIT]:  Dynamic linking error: null pointer while loading shared library
[IBM GPU JIT]:  Device Number  0: name=GeForce GTX 1070, ComputeCapability=6.1

我的程序本身非常简单,只需使用 Lambda 来生成一些工作负载来尝试 GPU 处理。

也许有人正在/曾经面临一个熟悉的问题并掌握了它,以便他/她可以提供一些帮助。谢谢!

4

1 回答 1

0

我希望您只需将包含 nvml.dll 的目录添加到您的 PATH 中。

您引用的页面有些难以阅读,但确实提到需要更新 PATH,特别是包含带有 nvml.dll 的文件夹。

您可以在 NVIDIA 驱动程序目录中找到 NVML 库。此目录的默认位置是 C:\Program Files\NVIDIA Corporation\NVSMI。

如果 NVIDIA 软件安装在系统的默认位置,则以下内容应允许您的测试运行:

设置 PATH=%PATH%;C:\Program Files\NVIDIA Corporation\NVSMI

您可以使用“系统属性”控制面板对话框使该更改永久生效。

于 2020-03-03T14:57:00.117 回答