-
需要先安裝Visual Studio 2017,並且選好
C++/CLI support和VC++ 2015.3 v14.00(v140) toolset for Desktop兩個在visual C+++ build tools下面的包 -
第二步是重新安裝CUDA,這一步要使得nvcc可以在命令行中調用。后面會用來編譯torch-scatter/torch-cluster/torch-sparse。
-
第三步是新建一個Anaconda 管理的Python環境,安裝PyTorch 1.2和cudatoolkit,命令是
conda install PyTorch=1.2 cudatoolkit=10.0 torchvision -c pytorch。這里需要注意,最好讓cudatoolkit的版本和第二步安裝的CUDA的版本是 相同 。- 在tensorflow的版本中,一般可以省略第二步,不需要必須安裝CUDA,在anaconda 中安裝cudatoolkit就好。
-
第四步是pip install --verbose,分別以下幾個package:
1. torch-scatter 2. torch-cluster 3. torch-sparse這幾個包都需要nvcc編譯,每個包在編譯過程中都有多個
.cu文件,安裝過程中的錯誤可能來自:cl.exe的路徑選擇不對,在系統環境變量PATH中,是添加了D:\Program Files (x86)\VisualStudio\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64,一般在命令行中輸入cl會有輸出。不要選擇arm64和x86版本。同時要把14.16.27023\bin\下的Hostx86等文件夾刪掉,不然在我編譯torch-sparse的過程中,在PATH配置正確的情況下,竟然還有調用Hostx86下的cl.exe。- 沒有調用
--verbose選項,直接pip install torch-scatter,或者直接安裝了沒有正確編譯的whl緩存,需要注意一下安裝過程的輸出信息,如果有出現install cache..../..../.../torch-scatter.whl的情況,那么還得把whl緩存刪掉。
-
第五步是pip install --verbose,分別是以下幾個package:
1. plyfile 2. rdflib -
還有其他幾個安裝包依賴,可以參考pytorch-geometric的setup.py,比如networkx、h5py、pandas和scikit-learn。
-
pip install --verbose torch-geometric
-
在Github的PyTorch主頁的issue中,可以從Problem when installing torch-scatter (Windows 10)中找到一些啟發。不過,能安裝成功,還得自己多次嘗試,不要輕易放棄,紙上得來終覺淺,絕知此事要躬行。
