Ubuntu18.04安裝Pytorch


記錄自己ubuntu18.04安裝pytorch的心得,anaconda3-5.2已經安裝好,這里不再詳述。

目錄

1.CPU版本Pytorch安裝

2.GPU版本Pytorch安裝

3.相關網址及總結


1.CPU版本Pytorch安裝

CPU版本的pytoch安裝比較簡單,在Pytorch官網中選擇python版本,運行conda或者pip命令即可,如下圖所示。注意,為了方便多個Python版本的管理,通常需要在anaconda中創建新的環境空間

2.GPU版本Pytorch安裝

GPU版本的pytorch安裝比較復雜,在安裝pytorch之前,通常需要安裝顯卡驅動,cuda和cudnn,CUDA是NVIDIA推出的用於自家GPU的並行計算框架,也就是說CUDA只能在NVIDIA的GPU上運行;cuDNN(CUDA Deep Neural Network library):是NVIDIA打造的針對深度神經網絡的加速庫,是一個用於深層神經網絡的GPU加速庫。如果你要用GPU訓練模型,cuDNN不是必須的,但是一般會采用這個加速庫。CUDA是必須的,cudnn是可選的。

通常需要考慮:

(1)檢查顯卡型號是否支持GPU運算

檢查方法:終端輸入

ubuntu-drivers devices

得到以下結果:

圖中,“model”對應的就是電腦顯卡型號,“driver”中后面帶有“recommanded”就是推薦的顯卡驅動型號。根據顯卡型號到英偉達官網查詢是否支持GPU。

網站顯示如下:

先選擇“CUDA GeForce and TITAN Products”,再看具體型號,電腦GPU為GTX 1050,支持GPU 運算。

(2)安裝顯卡驅動

確定顯卡支持GPU 運算后,接下來需要安裝顯卡驅動,目前嘗試過兩種安裝方法,都成功了。

安裝方法一:

系統“軟件和更新”,“附加驅動”,選擇推薦的驅動安裝。

安裝方法二:

運行以下命令,安裝所有驅動

sudo ubuntu-drivers autoinstall

或者只安裝推薦的驅動

sudo apt install nvidia-435

判斷驅動是否安裝成功

方法一:

終端輸入命令

sudo nvidia-smi

顯示以下信息則表示安裝成功

方法二:

系統設置查看“圖形”信息,變為英偉達的顯卡類型即可。

(3)GCC降級

CUDA 9.0僅支持GCC 6.0及以下版本,而Ubuntu 18.04預裝GCC版本為7.3,需要手動降級。

安裝4.8版本的g++和gcc,命令如下:

sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8

裝完后進入到/usr/bin目錄下,鏈接到低版本,命令如下:

sudo mv gcc gcc.bak #備份
sudo ln -s gcc-4.8 gcc #重新鏈接
sudo mv g++ g++.bak
sudo ln -s g++-4.8 g++

檢查是否修改成功,命令:

gcc --version
g++ --version

顯示結果如下,則修改成功。

(4)安裝cuda

cuda和cudnn、pytorch版本之間要保證對應,能夠支持。以下網址中有之前各版本的cuda下載(https://developer.nvidia.com/cuda-toolkit-archive),本文選擇的是cuda9.0,根據系統環境選擇合適的版本下載,有補丁的連補丁一同下載。關於Ubuntu系統一項,記住一個原則:高版本兼容低版本。即cuda9.0只有14.04和16.04兩個選項,但18.04版本兼容這兩個版本,所以cuda9.0也可以用於18.04版本的Ubuntu。

下載完成后,在下載路徑下執行命令

sudo sh cuda_9.0.176_384.81_linux.run

安裝過程中,以下選項選擇no,其余選擇yes或者默認。

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 352.39? ((y)es/(n)o/(q)uit): n

此外,安裝結束前,會出現warning:In complete Installation,可以忽略。

***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 384.00 is required for CUDA 9.0 functionality to work.
To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file:
    sudo <CudaInstaller>.run -silent -driver

Logfile is /tmp/cuda_install_4242.log

隨后執行以下命令安裝補丁:
 

sudo sh cuda_9.0.176.1_linux.run
sudo sh cuda_9.0.176.2_linux.run
sudo sh cuda_9.0.176.3_linux.run
sudo sh cuda_9.0.176.4_linux.run

安裝完成后,打開.bashrc文件,在終端輸入:

sudo gedit ~/.bashrc

在文件的末尾添加下面兩行,注意修改成你的安裝路徑:

export PATH="/usr/local/cuda-9.0/bin:$PATH" #這里添加路徑出錯的話最好加上雙引號把路徑括起來,這里已經加上了雙引號
export LD_LIBRARY_PATH="/usr/local/cuda-9.0/lib64:$LD_LIBRARY_PATH"

測試cuda是否安裝成功:
先重啟終端,隨后執行命令:
 

nvcc -V

之后,編譯 CUDA Samples,注意改為自己的安裝路徑和版本:

cd NVIDIA_CUDA-9.0_Samples/0_Simple/vectorAdd
make
./vectorAdd 

出現下面的Test PASSED代表CUDA安裝成功。

(5)安裝cudnn

安裝的cudnn版本要與cuda版本對應,注冊英偉達賬號后,登陸以下網站選擇相應的版本下載,這里選擇的是cudnn-9.0-linux-x64-v7.6.0.64。

由於下載的是.solitairetheme8格式的壓縮文件,在下載路徑下執行命令:

cp  cudnn-9.0-linux-x64-v7.6.0.64.solitairetheme8 cudnn-9.0-linux-x64-v7.6.0.64.tgz

tar -xvf cudnn-9.0-linux-x64-v7.6.0.64.tgz

先轉化為tgz格式,再解壓。隨后進入解壓路徑,執行:

cd cuda
sudo cp lib64/* /usr/local/cuda/lib64/
sudo cp include/* /usr/local/cuda/include/
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

注:在安裝過程中,我將所有的下載文件剪切到主文件夾中,再運行指令,避免頻繁切換路徑。安裝完成后,這些文件可以刪除。

(6)安裝pytorch

安裝pytorch的時候,同樣需要考慮與cuda版本對應,以下網址中(https://pytorch.org/get-started/previous-versions/)有歷史版本的pytorch,選擇合適的版本,並執行conda或者pip命令即可。這里選擇的是v1.1.0。

注:安裝pytorch時,和CPU版本一樣,新建python環境空間。

3.相關網址及總結

(1)自己安裝過程中及本博客,主要參考以下博客:
Ubuntu18.04下安裝深度學習框架Pytorch(GPU加速)

解壓.solitairetheme8文件

CUDA 版本,顯卡驅動,Ubuntu版本,GCC版本之間的對應關系

GPU,CUDA,cuDNN的理解

(2)安裝思路

安裝anaconda,顯卡是否支持,安裝顯卡驅動,GCC 降級,安裝cuda,安裝cudnn,新建python環境,安裝pytorch

版本對應:系統版本(高兼容低),cuda版本、cudnn版本、pytorch版本

關於版本對應關系,可以到上文提到的網址中查看。

(3)下載網址

cuda最新版下載:

https://developer.nvidia.com/cuda-downloads

cuda歷史版本下載:

https://developer.nvidia.com/cuda-toolkit-archive

pytorch最新版下載:

https://pytorch.org/

pytorch歷史版本下載:

https://pytorch.org/get-started/previous-versions/

cudnn最新版下載:

https://developer.nvidia.com/cudnn

cudnn歷史版本下載:

https://developer.nvidia.com/rdp/cudnn-archive

anaconda最新版下載:

https://www.anaconda.com/distribution/

anaconda歷史版本下載:

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM