Conda环境升级Cuda 10.2后nvcc仍显示10.1 非root用户无法安装Pytorch
问题根因
- conda官方源提供的
cudatoolkit包仅包含CUDA运行时依赖库,不包含nvcc编译工具链。你执行nvcc --version返回的是系统全局预装的CUDA 10.1版本,和conda环境内安装的运行时库版本无关,该差异本身不会直接影响预编译PyTorch的安装与使用。
解决方案
方案1:直接安装适配CUDA 10.2的PyTorch(推荐,无需处理nvcc版本)
如果你的需求仅为安装使用适配CUDA 10.2的PyTorch,不需要编译自定义CUDA算子,无需调整nvcc版本,直接执行对应版本的PyTorch安装命令即可:
conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=10.2 -c pytorch
安装完成后执行以下命令验证有效性即可,无需关注nvcc --version的输出:
python -c "import torch; print('CUDA可用性:', torch.cuda.is_available()); print('PyTorch适配CUDA版本:', torch.version.cuda)"
返回PyTorch适配CUDA版本为10.2且CUDA可用性为True即可正常使用。
方案2:将conda环境内的nvcc切换为10.2版本
如果需要用到nvcc做编译操作,可在conda环境内安装完整的CUDA工具链:
- 执行安装命令:
conda install nvidia/label/cuda-10.2.89::cuda-toolkit - 配置环境变量优先级,将当前conda环境的二进制目录加到PATH最前面,避免优先调用系统级的nvcc:
echo 'export PATH=$CONDA_PREFIX/bin:$PATH' >> ~/.bashrc source ~/.bashrc - 重新激活你的conda环境后执行
nvcc --version,即可返回10.2版本。
内容的提问来源于stack exchange,提问作者Adnan Ali
相关产品推荐
相关产品推荐

