在使用 Python 3.7 的 WSL2 conda 环境中的系统错误中发现没有 NVIDIA 驱动程序

Posted

技术标签:

【中文标题】在使用 Python 3.7 的 WSL2 conda 环境中的系统错误中发现没有 NVIDIA 驱动程序【英文标题】:Found no NVIDIA driver on your system error on WSL2 conda environment with Python 3.7 【发布时间】:2021-01-23 03:07:17 【问题描述】:

我有一个 Nvidia 1080Ti GPU,我想在 WSL2 上运行 Pytorch,但出现错误“在您的系统上找不到 NVIDIA 驱动程序”,但我确实安装了 NVIDIA 驱动程序。这是我做的步骤。

    我安装了 WSL2,并从 GeForce 驱动程序为 WSL 上的 Cuda 安装了 NVIDIA 驱动程序: https://developer.nvidia.com/cuda/wsl/download

    我使用 Python 3.7 激活了一个干净的 conda 环境

    然后我运行 Pytorch 安装: conda install pytorch torchvision cudatoolkit=10.2 -c pytorch

然后发生错误,提示找不到 NVIDIA 驱动程序。我在 Pytorch 论坛上看到了一篇帖子,有人确实让它在类似的设置下运行:Ubuntu 18.04 + Conda + Pytorch https://discuss.pytorch.org/t/found-no-nvidia-driver-on-your-system-but-its-there/35063/4

我没有多个 GPU,所以我不知道如何在 WSL2 中识别我的驱动程序。感谢您的任何想法!

【问题讨论】:

【参考方案1】:

您的 Windows 版本是多少? (运行winver.exe) 您需要运行 Windows Insider build 20145 或更高版本才能在 WSL2 中使用 CUDA。

如果/dev/dxg文件存在,你就知道gpu被检测到了。

【讨论】:

啊,你是对的,我没有安装 Windows Insider Build。我使用的是 Windows 10 版本 2004(操作系统版本 19041.508)教育版。非常感谢您的捕捞!我会尝试安装 Windows Insider 版本。【参考方案2】:

@onoma 说得对,原来的安装步骤少了一个部分,即 Windows Insider 版本。

发现此文档包含安装支持 Cuda 的 WSL2 的完整步骤指南。万一遇到这篇文章的人会感兴趣:

https://docs.nvidia.com/cuda/wsl-user-guide/index.html

注意:教育版似乎没有选择加入 Windows 预览体验计划的选项。在我的系统上,我可以在 Windows 设置中访问 Windows Insider Program,但它需要将诊断数据集设置为完整才能获得构建。但是,我可以配置的设置中没有这样的选项,它显示“某些设置已隐藏或由您的组织管理”。

【讨论】:

以上是关于在使用 Python 3.7 的 WSL2 conda 环境中的系统错误中发现没有 NVIDIA 驱动程序的主要内容,如果未能解决你的问题,请参考以下文章

在 WSL2 Ubuntu 中使用 Laravel 运行 Python 会导致“找不到模块”

如何在 wsl2 上从 python3 运行 Selenium ChromeDriver?

WSL2 Ubuntu 上的 Python launch.json 参数

WSL2_07 VSCode配置并编写Python程序

(最简单)在同一台计算机上使用 Python 3.6 和 3.7 的方法?

使用 WSL2 在 Docker Desktop 上运行的容器没有实时输出