解决 GPU 问题¶
在这篇文章中
在 Ubuntu 中更新驱动程序或软件后出现 NVML 错误:驱动程序/库版本不匹配¶
如果在安装后遇到类似 Failed to initialize NVML: Driver/library version mismatch 的错误,则需要通过删除 Nvidia 内核模块并再次运行 nvidia-smi 来重新连接这些模块以进行重新初始化:
sudo rmmod -f nvidia-modeset
sudo rmmod nvidia_uvm
sudo rmmod nvidia_drm
sudo rmmod nvidia-peermem
sudo rmmod nvidia
sudo nvidia-smi
该错误也可能是由于在同时更新系统内核时 /boot 分区已满,导致无法构建包含显卡模块的新初始 RAM 磁盘 (initrd)。要解决此问题,请使用 此说明。
如果错误仍然存在,建议移除 Nvidia 驱动程序包
并 重新安装 它们(以及 CUDA)。
Nvidia 驱动程序安装:内核模块未编译¶
如果在安装 Nvidia 驱动程序时遇到如下错误:
# command: 'make' -j128 KERNEL_UNAME=6.8.0-64-generic IGNORE_CC_MISMATCH=1 SYSSRC=/lib/modules/6.8.0-64-generic/build LD=/usr/bin/ld.bfd CONFIG_X86_KERNEL_IBT= modules
Makefile:63: WARNING: Unable to locate the compiler x86_64-linux-gnu-gcc-12 from CONFIG_CC_VERSION_TEXT in the kernel configuration.
make[1]: Entering directory '/usr/src/linux-headers-6.8.0-64-generic'
warning: the compiler differs from the one used to build the kernel
The kernel was built by: x86_64-linux-gnu-gcc-12 (Ubuntu 12.3.0-1ubuntu1~22.04) 12.3.0
You are using: cc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
SYMLINK /var/lib/dkms/nvidia/575.57.08/build/nvidia/nv-kernel.o
SYMLINK /var/lib/dkms/nvidia/575.57.08/build/nvidia-modeset/nv-modeset-kernel.o
这意味着您的系统上未安装 GCC 版本 12。请使用以下命令安装它:
然后 重新安装 它们(以及 CUDA)。
Nvidia 驱动程序安装错误:无法签署内核模块¶
在安装显卡驱动程序期间,您可能会看到系统无法找到 update-secureboot-policy 包并签署模块的错误,即使 BIOS 中已禁用 Secure Boot:
Building initial module nvidia/575.57.08 for 6.8.0-64-generic
Sign command: /usr/bin/kmodsign
Binary update-secureboot-policy not found, modules won't be signed
要解决此问题,请使用以下命令安装 shim-signed 包:
然后 重新安装 它们(以及 CUDA)。
在 Ubuntu 上为 Blackwell GPU(RTX 5090 或 RTX 6000 PRO)安装 PyTorch 及其模块时出现错误¶
在此系列显卡上安装 PyTorch 稳定版时可能会出现错误。请运行以下命令使用支持它们的夜间构建版本:
pip install --upgrade --force-reinstall torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu130
其中 cu130 是 CUDA 版本(13.0)。如果您使用的是更早的版本(12.8),请使用路径 https://download.pytorch.org/whl/nightly/cu128。