PyTorch与CUDA版本不匹配致GPU未检测及Apex安装问题求助
PyTorch与CUDA版本匹配及Apex安装问题
我的CUDA版本情况
- 系统
nvcc -V输出版本为11.4 - nvidia-smi显示对应CUDA版本(对应提供的截图内容)
尝试过的操作及问题
第一次安装(PyTorch 1.10.1 + cudatoolkit 11.1)
- 执行命令:
conda install pytorch=1.10.1 cudatoolkit=11.1 -c pytorch - 状态:PyTorch正常识别CUDA,
torch.version.cuda返回"11.1",torch.cuda.is_available()返回True - 问题:安装Apex失败,原因是nvcc 11.4与cudatoolkit 11.1版本不兼容
后续尝试(cudatoolkit 11.4搭配不同PyTorch版本)
- 执行命令:
conda install pytorch cudatoolkit=11.4 -c pytorch - 结果:PyTorch自动安装为1.9.1,此时
torch.version.cuda返回None,torch.cuda.is_available()返回False - 额外尝试:将cudatoolkit=11.4分别与PyTorch 1.9.1、1.12.1搭配,均无法让GPU被正确识别
需求
找到能让GPU正常识别(torch.cuda.is_available()返回True),同时兼容nvcc 11.4以安装Apex的PyTorch和cudatoolkit版本组合,或排查其他潜在问题。
推荐版本组合
根据PyTorch官方兼容矩阵,结合你的nvcc 11.4版本,推荐以下稳定组合:
- PyTorch 1.12.1 + cudatoolkit 11.3/11.6:PyTorch 1.12.1官方支持CUDA 11.3、11.6,nvcc 11.4可向前兼容11.3、向后兼容11.6,能满足Apex对版本匹配的要求
- 安装命令(以cudatoolkit 11.3为例):
或(cudatoolkit 11.6):conda install pytorch=1.12.1 torchvision torchaudio pytorch-cuda=11.3 -c pytorch -c nvidiaconda install pytorch=1.12.1 torchvision torchaudio pytorch-cuda=11.6 -c pytorch -c nvidia
额外排查点
- 建议创建全新conda环境,避免旧依赖干扰:
conda create -n apex_env python=3.8 conda activate apex_env # 再执行上述安装命令 - 检查显卡驱动版本:nvidia-smi显示的驱动需满足CUDA 11.4最低要求(≥470.42.01),版本过低需先更新驱动
- Apex安装采用源码编译,自动匹配系统nvcc:
git clone https://github.com/NVIDIA/apex.git cd apex pip install -v --disable-pip-version-check --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./
内容的提问来源于stack exchange,提问作者Harry Mao
相关产品推荐
相关产品推荐

