Last active
January 27, 2023 17:27
-
-
Save alien18331/aa93e7ede6b4486cc238fdeb11e4cd72 to your computer and use it in GitHub Desktop.
[ubuntu] install CUDA & cudnn
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version mapping | |
https://www.tensorflow.org/install/source_windows#tested_build_configurations | |
version | |
CUDA: 10.0 | |
Cudnn: 7.4.2 | |
=== CUDA === | |
Download: https://developer.nvidia.com/cuda-toolkit-archive?spm=a2c4e.10696291.0.0.7b5819a4F6rq7s | |
$ sudo sh cuda_10.0.130_410.48_linux.run | |
Do you accept the previously read EULA? | |
> accept | |
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48? | |
> n | |
Install the CUDA 10.0 Toolkit? | |
> yes | |
Enter Toolkit Location [ default is /usr/local/cuda-10.0 ]: | |
> ENTER | |
Do you want to install a symbolic link at /usr/local/cuda? | |
> y | |
Install the CUDA 10.0 Samples? | |
> y | |
Enter CUDA Samples Location [ default is /home/smg ]: | |
> ENTER | |
$ sudo vim ~/.bashrc | |
add two line to .bashrc and save exit | |
export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}} | |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.0/lib64 | |
reload | |
$ source ~/.bashrc | |
$ sudo ldconfig | |
Test version | |
$ nvcc -V | |
Test CUDA | |
$ cd ~/NVIDIA_CUDA-10.0_Samples/1_Utilities/deviceQuery/ | |
$ sudo make | |
$ ./deviceQuery | |
=== cudnn === | |
Download: https://developer.nvidia.com/rdp/cudnn-archive | |
cuDNN v7.4 for CUDA 10.0 (with tensorflow 1.14) | |
1.cuDNN Runtime Library for Ubuntu18.04 (Deb) | |
2.cuDNN Developer Library for Ubuntu18.04 (Deb) | |
3.cuDNN Code Samples and User Guide for Ubuntu18.04 (Deb) | |
4.cuDNN Library for Linux | |
$ sudo dpkg -i libcudnn7_7.6.4.38-1+cuda10.0_amd64.deb | |
$ sudo dpkg -i libcudnn7-dev_7.6.4.38-1+cuda10.0_amd64.deb | |
$ sudo dpkg -i libcudnn7-doc_7.6.4.38-1+cuda10.0_amd64.deb | |
$ tar -xvf cudnn-10.0-linux-x64-v7.6.4.38.tgz | |
$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include 注意,解压后的文件夹名称为cuda ,将对应文件复制到 /usr/local中的cuda内 | |
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 | |
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn* | |
Test Version - cudnn | |
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 | |
Test tensorflow-gpu | |
$ import tensorflow as tf | |
$ sess = tf.Session(config=tf.ConfigProto(log_device_placement=True)) | |
错误如下: | |
/sbin/ldconfig.real: /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn.so.8 is not a symbolic link | |
/sbin/ldconfig.real: /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_adv_train.so.8 is not a symbolic link | |
/sbin/ldconfig.real: /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8 is not a symbolic link | |
/sbin/ldconfig.real: /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8 is not a symbolic link | |
/sbin/ldconfig.real: /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8 is not a symbolic link | |
/sbin/ldconfig.real: /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_ops_train.so.8 is not a symbolic link | |
/sbin/ldconfig.real: /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8 is not a symbolic link | |
解决方案: | |
sudo ln -sf /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.0.1 /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_adv_train.so.8 | |
sudo ln -sf /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8.0.1 /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8 | |
sudo ln -sf /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8.0.1 /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8 | |
sudo ln -sf /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8.0.1 /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8 | |
sudo ln -sf /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.0.1 /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_ops_train.so.8 | |
sudo ln -sf /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8.0.1 /usr/local/cuda-11.0/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8 | |
=== CUDA === | |
for ubuntu18 | |
Tensorflow 2.4.0 | |
Cuda 11.0 | |
Cudnn 8 | |
TensorRT 7.2.1.6 | |
nvidia-driver 450 | |
同樣採用官網下載deb 回來安裝的方法 | |
到這邊 https://developer.nvidia.com/cuda-downloads | |
我選擇 Linux -- x86_64 -- Ubuntu -- 18.04 -- deb(local) | |
畫面上就會有安裝步驟,照著做就沒問題了 | |
install guide | |
$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin | |
$ sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600 | |
$ wget https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda-repo-ubuntu1804-11-0-local_11.0.3-450.51.06-1_amd64.deb | |
$ sudo dpkg -i cuda-repo-ubuntu1804-11-0-local_11.0.3-450.51.06-1_amd64.deb | |
$ sudo apt-key add /var/cuda-repo-ubuntu1804-11-0-local/7fa2af80.pub | |
$ sudo apt-get update | |
$ sudo apt-get -y install cuda | |
$ sudo vim ~/.bashrc | |
add two line to .bashrc and save exit | |
export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}} | |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.0/lib64 | |
reload | |
$ source ~/.bashrc | |
$ sudo ldconfig | |
Check version | |
$ nvcc -V | |
Test CUDA | |
$ cd ~/NVIDIA_CUDA-10.0_Samples/1_Utilities/deviceQuery/ | |
$ sudo make | |
$ ./deviceQuery | |
=== Cudnn === | |
Download: https://developer.nvidia.com/rdp/cudnn-archive | |
cuDNN v7.4 for CUDA 10.0 (with tensorflow 1.14) | |
1.cuDNN Runtime Library for Ubuntu18.04 (Deb) | |
2.cuDNN Developer Library for Ubuntu18.04 (Deb) | |
3.cuDNN Code Samples and User Guide for Ubuntu18.04 (Deb) | |
4.cuDNN Library for Linux | |
$ sudo dpkg -i libcudnn7_7.6.4.38-1+cuda10.0_amd64.deb | |
$ sudo dpkg -i libcudnn7-dev_7.6.4.38-1+cuda10.0_amd64.deb | |
$ sudo dpkg -i libcudnn7-doc_7.6.4.38-1+cuda10.0_amd64.deb | |
$ tar -xvf cudnn-10.0-linux-x64-v7.6.4.38.tgz | |
$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include 注意,解压后的文件夹名称为cuda ,将对应文件复制到 /usr/local中的cuda内 | |
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64 | |
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn* | |
Test Version - cudnn | |
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 | |
=== TensorRT === | |
Download: https://developer.nvidia.com/nvidia-tensorrt-7x-download | |
$ tar -xvf TensorRT-7.2.0.14.Ubuntu-18.04.x86_64-gnu.cuda-11.0.cudnn8.0.tar.gz | |
# sudo vim ~/.bashrc | |
add path | |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/smg/usrPack/TensorRT/TensorRT-7.2.0.14/lib | |
$ source ~/.bashrc | |
$ cd python | |
$ sudo pip3 install tensorrt-7.0.0.11-cp36-none-linux_x86_64.whl | |
$ cd uff | |
$ sudo pip3 install uff-0.6.5-py2.py3-none-any.whl | |
$ cd graphsurgeon | |
$ sudo pip3 install graphsurgeon-0.4.1-py2.py3-none-any.whl | |
$ sudo cp ./targets/x86_64-linux-gnu/lib/lib* /usr/lib/ | |
Test TensorRT | |
1.下载测试数据 | |
$ cd data/mnist | |
$ python3 download_pgms.py | |
2.编译测试 | |
$ cd samples/sampleMNIST | |
$ make | |
3.运行 | |
$ cd ../../bin | |
$ ./sample_mnist | |
ref. | |
Cuda | |
https://gitpress.io/@chchang/install-nvidia-driver-cuda-pgstrom-in-ubuntu-1804 | |
Cudnn | |
https://gist.github.com/alien18331/aa93e7ede6b4486cc238fdeb11e4cd72 | |
TensorRT | |
https://blog.csdn.net/u011681952/article/details/105973996 | |
pip3 install launchpadlib |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment