GPU可用但torch.cuda.is_available()返回false,附VM环境配置
解决NVIDIA驱动通信失败及PyTorch CUDA不可用问题
问题分析
你的CUDA工具链(11.3)已安装,但NVIDIA驱动未正确加载或安装,导致nvidia-smi无法通信,进而PyTorch无法识别CUDA。CUDA 11.3要求最低NVIDIA驱动版本为465.19.01,需确保安装对应兼容版本。
解决步骤
卸载冲突驱动
先清理系统中可能存在的旧NVIDIA驱动或残留文件:sudo apt-get purge nvidia* sudo apt-get autoremove sudo apt-get autoclean禁用nouveau开源驱动
nouveau会与官方NVIDIA驱动冲突,需添加黑名单:
创建配置文件:sudo nano /etc/modprobe.d/blacklist-nouveau.conf写入以下内容:
blacklist nouveau options nouveau modeset=0保存退出后更新initramfs并重启:
sudo update-initramfs -u sudo reboot安装兼容的NVIDIA驱动
先安装依赖包:sudo apt-get install linux-headers-$(uname -r) gcc make添加NVIDIA官方仓库:
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/debian10/x86_64/7fa2af80.pub echo "deb https://developer.download.nvidia.com/compute/cuda/repos/debian10/x86_64/ /" | sudo tee /etc/apt/sources.list.d/cuda.list更新软件源并安装对应驱动(CUDA 11.3适配465版本):
sudo apt-get update sudo apt-get install nvidia-driver-465安装完成后重启系统:
sudo reboot验证修复效果
重启后运行nvidia-smi,若显示GPU信息、驱动版本及CUDA版本,则驱动安装成功。此时再运行torch.cuda.is_available()应返回True。
内容的提问来源于stack exchange,提问作者LoneWolf
相关产品推荐
相关产品推荐

