Ubuntu下PyTorch與CUDA的兼容性說明
Ubuntu系統下,PyTorch與CUDA的兼容性需滿足版本匹配要求:不同PyTorch版本僅支持特定范圍的CUDA版本,且需配合對應的cuDNN庫(用于優化深度學習性能)。例如:
為確保穩定性和性能,建議選擇以下主流組合:
nvidia-smi
命令檢查GPU型號,確認驅動版本是否符合CUDA要求(如CUDA 11.8需驅動≥520);sudo ubuntu-drivers autoinstall
自動安裝適配驅動,或手動指定版本(如sudo apt install nvidia-driver-555
)。.deb
包安裝:sudo dpkg -i cuda-repo-ubuntu2004-11-8-local_11.8.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-ubuntu2004-11-8-local/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda
~/.bashrc
):export PATH=/usr/local/cuda-11.8/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
source ~/.bashrc
conda create -n pytorch_env python=3.8
conda activate pytorch_env
conda install pytorch torchvision torchaudio cudatoolkit=11.8 -c pytorch -c nvidia
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118
運行以下Python代碼,檢查CUDA是否可用:
import torch
print(f"PyTorch版本: {torch.__version__}")
print(f"CUDA版本: {torch.version.cuda}")
print(f"CUDA是否可用: {torch.cuda.is_available()}") # 需返回True
若torch.cuda.is_available()
返回True
,則表示安裝成功。
問題1:torch.cuda.is_available()
返回False
可能原因:驅動未正確安裝、CUDA版本不匹配、環境變量未配置。
解決方法:重新安裝驅動(sudo ubuntu-drivers autoinstall
)、確認PyTorch與CUDA版本匹配、檢查PATH
和LD_LIBRARY_PATH
是否包含CUDA路徑。
問題2:gcc版本不匹配
Ubuntu默認gcc版本可能過舊,需升級至CUDA要求的版本(如CUDA 11.8需gcc≥10):
sudo apt install gcc-10 g++-10
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 100
問題3:安全啟動阻止驅動安裝
若使用雙系統,需進入BIOS關閉安全啟動(Secure Boot),否則無法加載NVIDIA驅動。