Ubuntu16.04服務器上用conda安裝PyTorch、torchvision、cuda

首先感嘆,Firewall性能槓槓的!

再簡單談一談我對pip和conda這兩個指令(即兩個program,在系統的/bin directory中能找到對應的二進制可執行文件,且被添加在了系統的$PATH(路徑)中)的認識。

pip和conda這兩個指令是在系統中安裝python program(軟件和工具包等)的工具。

這兩個指令的執行,均是先從其對應的config文件中找到相應待安裝program所在repo(python的program(安裝文件等)可以理解爲都是掛在往上某個文件夾中,這個文件加可被稱爲repo,即repository)的url,然後由此url下載安裝文件,然後安裝。三部曲。

pip指令可安裝的程序都在Pypi(Python Package Index)這個大repo之中。pip每次要install東西時,就是來Pypi這個大”文件夾“中找到待安裝的東西。而conda install則是到anaconda自己維護的大repo中找尋。因此,有可能有些program conda安裝不了因爲不在anaconda的repo中,而可以用pip安裝(因爲Pypi的規模遠大於anaconda自己的repo)。

言歸正傳。

conda可用一條install指令一次性爲我們一併安裝PyTorch + torchvision + cuda,很良心。

不同的pytorch和cuda版本會對應不同的一行conda install指令,pytorch官網會給出不同pytorch和cuda搭配安裝的不同指令。具體指令可以在pytorch官網(https://pytorch.org/)找到:

我是在Ubuntu16.04系統服務器上,想安裝PyTorch1.1.0,無所謂Cuda和torchvision的版本。我從pytorch官網得到的安裝指令是:(可見,PyTorch1.1.0必須要cuda9)

conda install pytorch torchvision cudatoolkit=9.0 -c pytorch

本以爲直接run就好了,這時我大firewall站了出來。果斷下載失敗:

難不難受!!!

好在解決方案比較直接,牆內大佬們的智慧是無窮的。

solution分兩步:

1. 給conda install指令添加下載地址的牆內鏡像源,每次conda install時不去牆外下載而是在牆內對應半官方url下載:

國內的pip和conda的repo的鏡像源(僅列出清華版,還有其他版本的鏡像源):

pip:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

conda: https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

具體實現方法是在conda install之前run如下指令:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

conda config --set show_channel_urls yes

2. 修改conda install那條指令,告訴conda不要去默認的牆外那個url去下載:

具體方法是將 conda install pytorch torchvision cudatoolkit=9.0 -c pytorch

尾部的-c pytorch這個option去掉,直接run:

conda install pytorch torchvision cudatoolkit=9.0

Viola!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章