cuDNN版本不兼容报错解决咨询:PyTorch编译与运行版本不一致
Exception has occurred: RuntimeError
cuDNN version incompatibility: PyTorch was compiled against (8, 5, 0) but found runtime version (8, 3, 3). PyTorch already comes bundled with cuDNN. One option to resolving this error is to ensure PyTorch can find the bundled cuDNN.File "/data/home/hemantmishra/Co-GAT/main.py", line 56, in
model = model.cuda()
核心原因
系统中存在的低版本cuDNN(8.3.3)被优先加载,导致PyTorch无法调用自身捆绑的高版本cuDNN(8.5.0)。
解决方法
方法一:让PyTorch优先加载自带的cuDNN
定位PyTorch自带cuDNN的路径
运行以下Python代码获取路径:import torch print(torch.backends.cudnn.get_dir())也可直接查找PyTorch安装目录下的lib文件夹,比如conda环境下的路径通常为:
/你的conda环境路径/lib/pythonX.X/site-packages/torch/lib设置环境变量优先加载该路径
临时生效(仅当前终端会话):
在Linux/macOS终端执行:export LD_LIBRARY_PATH=/上面获取的路径:$LD_LIBRARY_PATH之后在该终端内运行代码:
python /data/home/hemantmishra/Co-GAT/main.py永久生效(当前用户):
编辑~/.bashrc(Linux)或~/.zshrc(macOS)文件,添加上述export命令,保存后执行:source ~/.bashrc # 对应zsh环境执行source ~/.zshrc
验证生效状态
运行以下代码检查cuDNN版本:import torch print(torch.backends.cudnn.version())输出
8500(对应8.5.0)即说明配置成功。
方法二:安装与系统cuDNN匹配的PyTorch版本
如果方法一无效,可卸载当前PyTorch,安装适配系统cuDNN 8.3.3的版本。通过conda或pip查找对应版本的PyTorch安装命令,重新安装后再运行代码即可。
内容的提问来源于stack exchange,提问作者hemant mishra

