CuPy与PyTorch因CUDA版本冲突致DLL加载失败的解决求助
解决CuPy与PyTorch CUDA依赖冲突问题
问题根源
pip安装的CuPy轮子包与conda安装的PyTorch使用的CUDA runtime库路径冲突,导致二者无法同时正常加载。
解决步骤
1. 彻底清理现有冲突环境
先卸载所有相关包并清理缓存,避免残留依赖干扰:
# 卸载CuPy pip uninstall -y cupy-cuda112 # 卸载PyTorch及CUDA工具包 conda uninstall -y pytorch torchvision torchaudio cudatoolkit # 清理conda缓存 conda clean -a # 清理pip缓存 pip cache purge
2. 统一用conda安装对齐版本的PyTorch和CuPy
使用conda同时安装兼容版本的PyTorch、CuPy和CUDA工具包,确保依赖完全匹配:
conda install -c conda-forge -c pytorch cudatoolkit=11.2 pytorch torchvision torchaudio cupy
3. 验证安装有效性
打开Python交互终端,执行以下代码验证:
import torch # 检查PyTorch CUDA可用性 print(torch.cuda.is_available()) # 预期输出:True import cupy # 检查CuPy CUDA可用性 print(cupy.cuda.is_available()) # 预期输出:True
4. Windows环境下的额外排查(若仍有DLL错误)
- 检查系统环境变量:将
CUDA_PATH设置为当前conda环境的CUDA库目录,例如:C:\Users\CT1\miniconda3\envs\DentiumRIP\Library - 将conda环境的
bin目录添加到系统PATH的最前端,优先级高于系统其他CUDA路径:C:\Users\CT1\miniconda3\envs\DentiumRIP\bin - 重启终端或IDE,让环境变量生效
内容的提问来源于stack exchange,提问作者Tim
相关产品推荐
相关产品推荐

