PyTorch运行GNN时报错libcudart.so.10.2不存在 导入torch_scatter失败求助
问题定位
报错的核心原因是你安装的torch-scatter、torch-sparse等PyTorch Geometric扩展包,是基于CUDA 10.2版本编译的,但当前运行环境中没有安装CUDA 10.2,或是CUDA 10.2的库路径没有被正确识别。
解决方案
先执行以下代码确认本地PyTorch的版本和绑定的CUDA版本:
import torch print(torch.__version__) print(torch.version.cuda)
根据查询结果选择对应解决方式:
- 若查询到的CUDA版本不是10.2(包括显示为None的CPU版PyTorch):
先卸载已安装的不匹配的PyG相关包,再安装和你本地PyTorch版本匹配的扩展包,示例操作如下:# 先卸载旧包 !pip uninstall torch-scatter torch-sparse torch-cluster torch-spline-conv torch-geometric -y # 替换命令中链接里的`torch-1.9.0+xxx`为你实际查到的PyTorch+CUDA版本即可,比如是cpu版本就填torch-1.9.0+cpu,是cu111版本就填torch-1.9.0+cu111 !pip install torch-scatter -f https://pytorch-geometric.com/whl/torch-1.9.0+xxx.html !pip install torch-sparse -f https://pytorch-geometric.com/whl/torch-1.9.0+xxx.html !pip install torch-cluster -f https://pytorch-geometric.com/whl/torch-1.9.0+xxx.html !pip install torch-spline-conv -f https://pytorch-geometric.com/whl/torch-1.9.0+xxx.html !pip install torch-geometric - 若你确认本地已经安装了CUDA 10.2,仅路径未被识别:
运行代码前将CUDA 10.2的库路径添加到环境变量即可,假设你的CUDA 10.2安装在/usr/local/cuda-10.2路径下:
命令行运行脚本前执行:
Jupyter环境下执行:export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH%env LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64:$LD_LIBRARY_PATH - 若不想安装对应版本的CUDA,也可以直接安装CPU版本的全部PyG依赖,按照第一种情况的操作,将链接中的版本替换为CPU版本即可,仅会影响模型训练速度,不会影响功能运行。
内容的提问来源于stack exchange,提问作者riskiem
相关产品推荐
相关产品推荐

