排除基础问题
1.Windows右下角是否存在Nvidia图标(左1),能否正常进入N卡设置界面。
2.以本人工作站的RTX A5500为例,需要前往Nvidia官网下载对应的显卡驱动、CUDA工具、cuCUDA等必备软件,下载方法和版本对应请参考:
-
https://blog.csdn.net/qq_43317133/article/details/134652952
-
https://blog.csdn.net/xiangxiang613/article/details/112603083
3.排查路径问题
- C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\bin
- C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\libnvvp
- C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.8\extras\CUPTI\lib64
- 如果使用 cuDNN,还需要添加 cuDNN 的 bin 文件夹路径。
4.如果有MATLAB可以尝试运行实例Resnet进行自动调用GPU(无需配置额外环境)用于检测N卡是否正常并可用于矩阵加速。
5.VSCODE中运行
终端运行nvcc --version # 检查 CUDA 版本
,然后代码运行:
import torch
print(torch.cuda.is_available()) # 如果返回 True,则表明 GPU 可用
以上解决方案可解决多数问题,如果是学校或个人用电脑可以考虑搭建Anocanda,可以快速搭建环境。如果仍然报错或者返回False可以考虑以下本人的解决方案
本人解决方案
下载依赖DLL文件libomp140.x86_64.dll, 这里我提供了一个压缩包文件在github中,可直接下载,需要注意的是需要将包的dll文件复制到电脑system32即"C:\Windows\System32"文件夹中,随后重启VScode。
此时运行
import torch
print(torch.cuda.is_available()) # 如果返回 True,则表明 GPU 可用
应该会返回True。此解决方案源自外网,因为本人在配置GPU时无论如何创建python环境,切换cuda和torch等版本对应都无法解决识别问题,然后在一个外文论坛中找到此方案,故分享。