Ubuntu配置Pytorch on Graph (PoG)環境過程圖解
最近準備復現一下 KDD-20 Towards Deeper Graph Neural Networks 的程式碼,順便學習一下 GCN 最新的一些進展。
GCN 的程式碼通常需要安裝 Pytorch on Graph,按照其 官方指導,發現無法相容當前所使用的伺服器上的 pytorch1.3 和 cuda10.0 環境,需要升級 cuda 和 pytorch 的版本。
於是準備重新安裝一個虛擬環境,使用上 cuda 10.2 和 pytorch1.6。
1. 安裝 Cuda10.2 以及對應版本的 Cudnn
安裝 cuda 10.2,
wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run
sudo sh cuda_10.2.89_440.33.01_linux.run
然後安裝對應版本的 cudnn
但由於當前機器上已經安裝了 cuda 10.0,因此想要找一些能夠切換的方法,不刪去當前的 cuda10.0,發現可以使用軟連結的方式進行切換
# 切換為 cuda 8.0 版本 rm -rf /usr/local/cuda #刪除之前建立的軟連結 sudo ln -s /usr/local/cuda-8.0/ /usr/local/cuda/ nvcc --version #檢視當前 cuda 版本 nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2016 NVIDIA Corporation Built on Mon_Jan_23_12:24:11_CST_2017 Cuda compilation tools,release 8.0,V8.0.62 # cuda8.0 切換到 cuda9.0 rm -rf /usr/local/cuda sudo ln -s /usr/local/cuda-9.0/ /usr/local/cuda/ nvcc --version
安裝 cuda10.2,這裡只安裝 Cuda Toolkit 10.2,不安裝 driver,因為之前 Cuda10.0 已經裝過 driver 了。
然後嘗試安裝 對應版本的 cudnn,在linux上
使用
wget "https://developer.nvidia.com/compute/machine-learning/cudnn/secure/8.0.3.33/10.2_20200825/cudnn-10.2-linux-x64-v8.0.3.33.tgz"
會導致一直顯示 403 Forbid 錯誤,但用 windows 瀏覽器可以訪問成功,用 windows 下載,但字尾名變為了 ".solitairetheme8",
mv cudnn-10.2-linux-x64-v8.0.3.33.solitairetheme8 cudnn-10.2-linux-x64-v8.0.3.33.tgz
接下來安裝 cudnn,注意到,現在有多個版本的 cuda 了,不要再使用軟連結 /usr/local/cuda/, 而應該使用對應版本的 cuda 地址。
使用 cd /usr/local/ 可以看到當前安裝的 cuda 的情況, 我這裡是:
使用如下命令完成 cudnn 的安裝:
tar -zxvf cudnn-10.2-linux-x64-v8.0.3.33.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.2/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-10.2/lib64/
sudo chmod a+r /usr/local/cuda-10.2/include/cudnn.h
sudo chmod a+r /usr/local/cuda-10.2/lib64/libcudnn*
從官網下載實在太慢,也可以改為設定為 清華源
# 首先執行如下幾條命令更換清華映象源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --set show_channel_urls yes
安裝結果:
突然發現,conda 也會安裝一個 cudatoolkit=10.2,但這個和自己手動安裝的還是有很大的不同的
安裝 pytorch1.7 一直沒有成功,最新版的 pytorch1.7 需要從國外官網源頭直接進行下載,速度太慢,一直失敗。
所以嘗試安裝 pytroch 1.5,
conda install pytorch=1.5
conda install torchvision
然後再按照 PoG 官網安裝相應的包:
pip install torch-scatter
pip install torch-sparse
pip install torch-cluster
pip install torch-spline-conv
pip install torch-geometric
最後終於成功完成了安裝。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。