Google Cloud深度学习VM加载nvidia.ko失败,CUDA不可用问题求助
解决Google Cloud深度学习VM的Nvidia驱动加载失败与PyTorch CUDA不可用问题
问题核心
错误提示指向nvidia.ko内核模块加载失败,结合你的V100 GPU+官方深度学习镜像环境,问题根源大概率是内核版本与驱动编译环境不匹配、残留驱动冲突,或是PyTorch版本与CUDA环境不兼容。
分步修复方案
1. 清理冲突驱动与残留组件
先彻底卸载现有可能出错的驱动及CUDA组件:
sudo apt-get purge nvidia* sudo apt-get autoremove sudo apt-get clean sudo rm -rf /usr/local/cuda*
2. 匹配内核头文件与GCC版本
Google Cloud VM的内核编译版本可能和默认GCC不一致,需同步环境:
# 安装当前内核对应的头文件 sudo apt-get install linux-headers-$(uname -r) # 查看当前GCC版本 gcc --version # 若GCC版本与内核编译版本不符,安装对应版本(示例为gcc-11,根据实际情况调整) sudo apt-get install gcc-11 g++-11 sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 100 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 100
3. 重装适配V100的Nvidia驱动
CUDA 12.1对应驱动为530.x系列,直接通过包管理器安装:
# 添加Nvidia官方源 curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt-get update # 安装驱动与DKMS sudo apt-get install nvidia-driver-530 nvidia-dkms-530 # 重启系统生效 sudo reboot
4. 验证驱动状态
重启后执行命令确认驱动正常加载:
nvidia-smi
若输出包含V100 GPU的硬件信息,说明驱动安装成功。
5. 修复PyTorch与CUDA版本兼容问题
当前PyTorch 2.0.0+cu118与CUDA 12.1不匹配,需重装对应版本:
# 卸载现有PyTorch pip uninstall torch torchvision torchaudio -y # 安装PyTorch 2.1 + CUDA 12.1版本 pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
6. 验证CUDA可用性
运行以下Python代码确认:
import torch print(torch.__version__) print(torch.cuda.is_available())
若输出2.1.x+cu121和True,则问题解决。
额外提示
- 官方深度学习镜像默认自带适配驱动,首次启动的自动安装脚本可能因环境异常出错,手动重装更可靠。
- 确认Google Cloud控制台中实例的GPU配置已正确挂载,无权限或挂载失败也会导致驱动加载异常。
内容的提问来源于stack exchange,提问作者HOSS_JFL
相关产品推荐
相关产品推荐

