Skip to content

Instantly share code, notes, and snippets.

@rsimd
Last active June 30, 2019 19:58
Show Gist options
  • Save rsimd/bc5dae5ed991057165eba4186e9decbd to your computer and use it in GitHub Desktop.
Save rsimd/bc5dae5ed991057165eba4186e9decbd to your computer and use it in GitHub Desktop.
ubuntu 18.04にcuda/cudnnなどをインストール

参考: https://cppx.hatenablog.com/entry/2019/01/29/134251
https://qiita.com/tatsuya11bbs/items/70205b070c7afd7dd651

既存のドライバ等を削除

sudo apt --purge remove nvidia-*
sudo apt --purge remove cuda-*

消し残しがないかチェック

dpkg -l | grep nvidia
dpkg -l | grep cuda

今回はlibnvidiaとlibcudnnがヒットしたのでそれらを削除し再起動(これらの作業が必要なのかは不明)

sudo apt-get --purge remove libnvidia-*  
sudo apt-get --purge remove libcudnn-*

sudo reboot now

nvidia-driverをダウンロードしてインストール

wget http://jp.download.nvidia.com/XFree86/Linux-x86_64/430.26/NVIDIA-Linux-x86_64-430.26.run
chmod +x NVIDIA-Linux-x86_64-430.26.run 
sudo ./NVIDIA-Linux-x86_64-430.26.run 

上のコードで出てくる質問には全てyesで答えた
nvidia-smiを確認して表示されたら次に進む

ubuntuのバージョン確認

cat /etc/os-release | grep VERSION
VERSION="18.04.2 LTS (Bionic Beaver)" 
VERSION_ID="18.04" 
VERSION_CODENAME=bionic

CUDA Toolkitをダウンロード URL

wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.1.168-1_amd64.deb

先程のページに沿ってインストール

Installation Instructions: sudo dpkg -i cuda-repo-ubuntu1804_10.1.168-1_amd64.deb sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub sudo apt-get update sudo apt-get install cuda Other installation options are available in the form of meta-packages. For example, to install all the library packages, replace "cuda" with the "cuda-libraries-10-1" meta package. For more information on all the available meta packages click here.

これには少しだけ時間がかかる

/usr/local/cudaがあれば成功

 ls /usr/local/cuda
LICENSE  NsightCompute-2019.3  NsightSystems-2019.3  README  bin  doc  extras  include  lib64  libnsight  libnvvp  nsightee_plugins  nvml  nvvm  samples  share  src  targets  tools  version.txt

cuDNNをダウンロード url
DLするのは以下の3つ

  • cuDNN Library for Linux
  • cuDNN Runtime Library for Ubuntu18.04 (Deb)
  • cuDNN Developer Library for Ubuntu18.04 (Deb)

これらのダウンロードはwgetではできないので、VPN越しにクライアントでDLしてからscpなどで送ると非常に時間がかかる。
ダウンロードするだけでも20分くらいかかるような雰囲気で、scpやftpで送ると更に時間がかかる。
コーヒーを淹れたりスクワットをやっても時間が潰れないので、マクドナルドでビッグマックを買って来るなどする。

※local machine

scp .\libcudnn7-dev_7.6.1.34-1+cuda10.1_amd64.deb .\libcudnn7_7.6.1.34-1+cuda10.1_amd64.deb .\cudnn-10.1-linux-x64-v7.6.1.34.tgz .\libcudnn7-doc_7.6.1.34-1+cuda10.1_amd64.deb [email protected]:/home/yourname/Downloads
libcudnn7-dev_7.6.1.34-1+cuda10.1_amd64.deb    100%  152MB 477.2KB/s   05:25
libcudnn7_7.6.1.34-1+cuda10.1_amd64.deb        100%  174MB 529.0KB/s   05:36
cudnn-10.1-linux-x64-v7.6.1.34.tgz             100%  498MB 554.0KB/s   15:19
libcudnn7-doc_7.6.1.34-1+cuda10.1_amd64.deb    100% 5272KB 479.0KB/s   00:11 

tgzを展開して適切な場所にコピー

tar xvf cudnn-10.1-linux-x64-v7.6.1.34.tgz

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

debファイルたちもインストール

sudo dpkg -i libcudnn7_7.6.1.34-1+cuda10.1_amd64.deb  
sudo dpkg -i libcudnn7-dev_7.6.1.34-1+cuda10.1_amd64.deb
sudo dpkg -i libcudnn7-doc_7.6.1.34-1+cuda10.1_amd64.deb

一番上を最初に入れないとエラーが出る

sudo dpkg -i libcudnn7-doc_7.6.1.34-1+cuda10.1_amd64.deb

テスト実行

Copy the cuDNN sample to a writable path. $cp -r /usr/src/cudnn_samples_v7/ $HOME Go to the writable path. $ cd $HOME/cudnn_samples_v7/mnistCUDNN Compile the mnistCUDNN sample. $make clean && make Run the mnistCUDNN sample. $ ./mnistCUDNN If cuDNN is properly installed and running on your Linux system, you will see a message similar to the following: Test passed!

.bashrcに以下を追記

export PATH="/usr/local/cuda/bin:$PATH"
136export LD_LIBRARY_PATH="/usr/local/cuda/lib64"
138export CUDA_VISIBLE_DEVICES=0
139export CUDA_HOME="/usr/local/cuda"

juliaでGPUを使うためのpackageをインストール

$julia

]activate GPUtest
]add CUDAdrv CUDAnative CuArrays
]build CuArrays
]test CuArrays

testとプリコンパイルが通ればOKなのだが…

~   
CUFFT                                |  145     5    150 
FFT                                |   68     3     71
Batch 2D FFT (in 4D)             |    8     1      9
2D real FFT                      |    3     1      4
3D real FFT                      |    3     1      4
FFT                                |   69     2     71
2D real FFT                      |    3     1      4
3D real FFT                      |    3     1      4
ERROR: LoadError: Some tests did not pass: 4151 passed, 5 failed, 0 errored, 0 broken.
in expression starting at /home/kr/.julia/packages/CuArrays/PwSdF/test/runtests.jl:17
ERROR: Package CuArrays errored during testing

Fluxの追加とテスト

]add Flux BSON
]build Flux
]test Flux

プリコンパイル

using CuArrays
using Flux
@rsimd
Copy link
Author

rsimd commented Jun 30, 2019

RNNのテストでFailとErrorがでている

ERROR: LoadError: Some tests did not pass: 254 passed, 4 failed, 1 errored, 0 broken. 
in expression starting at /home/kr/.julia/packages/Flux/qXNjB/test/runtests.jl:9
ERROR: Package Flux errored during testing

]test Flux
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment