手动安装这几个包是总是出错(OSError: [WinError 126] 找不到指定的模块),是因为版本之间的冲突,可以使用命令自动寻找版本。
安装步骤:
1)安装pytorch
下载链接:https://download.pytorch.org/whl/torch_stable.html
选择对应的版本,包括torch版本、cpu/cuda、python不同版本、windows/linux。
比如我现在的是torch=1.4.0、cu101、py36、linux版本 #箱安装cuda版本的torch,可通过nvcc -v 查看已安装的cuda版本
2)在命令行执行下述命令
CUDA=cu92 # cpu、cu92、cu100或cu101
pip install torch-scatter==latest+${CUDA} -f https://pytorch-geometric.com/whl/torch-1.4.0.html
pip install torch-sparse==latest+${CUDA} -f https://pytorch-geometric.com/whl/torch-1.4.0.html
pip install torch-cluster==latest+${CUDA} -f https://pytorch-geometric.com/whl/torch-1.4.0.html
pip install torch-spline-conv==latest+${CUDA} -f https://pytorch-geometric.com/whl/torch-1.4.0.html
pip install torch-geometric
遇到的错误:
一、运行项目时from torch_geometric.utils import scatter_这一行报错:ImportError: cannot import name 'scatter_'
是因为torch_geometric版本不对,可以尝试重新安装低版本或高版本的torch_geometric:
pip install torch_geometric==1.4.1
二、在ubuntu上重装GPU版本,出现错误:libcublas.so.9.2: cannot open shared object file: No such file or directory
这个错误可能是如下问题导致的:
-
Cuda-9.2
未安装或安装不正确 - 未添加环境变量或添加完未更新
1. 首先查看是否安装了cuda-9.2:(nvcc -v 或查看 /usr/local/cuda-9.2/lib64/ibcublas.so.9.2存在)。
2. 若已安装检查环境变量是否添加
sudo gedit .bashrc
在末尾加入:
export PATH="$PATH:/usr/local/cuda-9.2/bin" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda-9.2/lib64"
更新环境变量
source .bashrc
如果还是报错,考虑卸载并重新安装:
cd /usr/local/cuda/bin
sudo ./uninstall_cuda_9.2.pl
3. 安装cuda-9.2
下载链接: https://developer.nvidia.com/cuda-92-download-archive?target_os=Windows&target_arch=x86_64
1)检查环境是否满足安装cuda条件:
lspci | grep -i nvidia #电脑中是否有支持cuda的GPU
uname -m && cat /etc/*release #linux系统是否支持cuda
#结果 x86_64 DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 ......
gcc –version #系统是否安装了gcc
#结果 gcc (Ubuntu 5.4.0-6ubuntu1~16.04.5) 5.4.0 20160609 ......
#若未安装请使用下列命令进行安装: sudo apt-get install build-essential
sudo apt-get install linux-headers-$(uname -r) #可以安装对应kernel版本的kernel header和package development
#结果 ...... 升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 4 个软件包未被升级。 表示系统里已经有了,不用重复安装。
2)采用runfile安装cuda-9.2
到cuda官网,根据系统信息下载cuda-9.2的 XXX.run文件
lsmod | grep nouveau #如果有输出则代表nouveau正在加载。需要我们手动禁掉nouveau。
#Ubuntu的nouveau禁用方法:
#在/etc/modprobe.d中创建文件blacklist-nouveau.conf 输入命令:
sudo vi /etc/modprobe.d/blacklist-nouveau.conf
#利用vi编辑器编辑和保存文件) 在文件中输入一下内容:
blacklist nouveau options nouveau modeset=0
sudo update-initramfs –u
lsmod | grep nouveau #若无内容输出,则禁用成功,若仍有内容输出,请检查操作,并重复上述操作。
Ctrl+Alt+F1进入文本模式(命令行界面):
sudo sh cuda_9.1.85_387.26_linux.run --no-opengl-libs
#在提示 Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 387.26? (y)es/(n)o/(q)uit: 时,选n,其他选y
添加环境变量并更新(参考2.),并完成以下操作
sudo vim /etc/profile export #设置环境变量和动态链接库
PATH=/usr/local/cuda/bin:$PATH #在文件尾部加入
sudo vim /etc/ld.so.conf.d/cuda.conf # 创建链接文件
/usr/local/cuda/lib64 #在文件尾部加入
sudo ldconfig
#测试 cuda 的 Samples:
cd NVIDIA_CUDA-9.1_Samples
sudo make all -j4
cd bin/x86_64/linux/release
./deviceQuery
#结果 ....deviceQuery...Device0 = GeForce GT 635M Result = PASS 表示成功
参考:https://www.jianshu.com/p/00c37b09f0f3