安装 NVIDIA cuDNN v6.0 for CUDA 8.0
NVIDIA 引领人工智能计算 - NVIDIA
https://www.nvidia.cn/
NVIDIA 开发者 - NVIDIA DEVELOPER
https://developer.nvidia.com/
NVIDIA cuDNN
https://developer.nvidia.com/cudnn
cuDNN Archive
https://developer.nvidia.com/rdp/cudnn-archive
1. Download cuDNN v6.0 for CUDA 8.0
The NVIDIA CUDA® Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks.
cuDNN v6.0 Library for Linux - cudnn-8.0-linux-x64-v6.0.tgz
cuDNN v6.0 Developer Library for Ubuntu16.04 (Deb) - libcudnn6-dev_6.0.21-1+cuda8.0_amd64.deb
cuDNN v6.0 Runtime Library for Ubuntu16.04 (Deb) - libcudnn6_6.0.21-1+cuda8.0_amd64.deb
primitive ['prɪmɪtɪv]:adj. 原始的,远古的,简单的,粗糙的 n. 原始人
建议使用 cuDNN v6.0 Library for Linux - cudnn-8.0-linux-x64-v6.0.tgz 安装。
2. cuDNN Install Guide
LINUX
cd <installpath>/lib
export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH
Add to your build and link process by adding -I<installpath>/include
to your compile line and -L<installpath>/lib -lcudnn
to your link line.
yongqiang@famu-sys:~/software$ ls -l
总用量 1781344
-rwxrwxrwx 1 yongqiang yongqiang 97546170 6月 24 00:12 cuda_8.0.61.2_linux.run
-rwxrwxrwx 1 yongqiang yongqiang 1465528129 6月 24 00:17 cuda_8.0.61_375.26_linux.run
-rw-rw-r-- 1 yongqiang yongqiang 201134139 6月 25 12:55 cudnn-8.0-linux-x64-v6.0.tgz
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ sudo chmod 777 cudnn-8.0-linux-x64-v6.0.tgz
[sudo] yongqiang 的密码:
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ ls -l
总用量 1781344
-rwxrwxrwx 1 yongqiang yongqiang 97546170 6月 24 00:12 cuda_8.0.61.2_linux.run
-rwxrwxrwx 1 yongqiang yongqiang 1465528129 6月 24 00:17 cuda_8.0.61_375.26_linux.run
-rwxrwxrwx 1 yongqiang yongqiang 201134139 6月 25 12:55 cudnn-8.0-linux-x64-v6.0.tgz
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ tar -zxvf cudnn-8.0-linux-x64-v6.0.tgz
cuda/include/cudnn.h
cuda/lib64/libcudnn.so
cuda/lib64/libcudnn.so.6
cuda/lib64/libcudnn.so.6.0.21
cuda/lib64/libcudnn_static.a
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ ll
总用量 1781356
drwxrwxr-x 3 yongqiang yongqiang 4096 6月 25 13:06 ./
drwxr-xr-x 24 yongqiang yongqiang 4096 6月 25 11:54 ../
drwxrwxr-x 4 yongqiang yongqiang 4096 6月 25 13:06 cuda/
-rwxrwxrwx 1 yongqiang yongqiang 97546170 6月 24 00:12 cuda_8.0.61.2_linux.run*
-rwxrwxrwx 1 yongqiang yongqiang 1465528129 6月 24 00:17 cuda_8.0.61_375.26_linux.run*
-rwxrwxrwx 1 yongqiang yongqiang 201134139 6月 25 12:55 cudnn-8.0-linux-x64-v6.0.tgz*
-rwxrwxrwx 1 yongqiang yongqiang 59876426 6月 24 12:00 libcudnn6-dev_6.0.21-1+cuda8.0_amd64.deb*
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ sudo cp cuda
cuda/ cuda_8.0.61.2_linux.run cuda_8.0.61_375.26_linux.run
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ sudo cp cuda/include/cudnn.h /usr/local/cuda-8.0/include/
yongqiang@famu-sys:~/software$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda-8.0/lib64/
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ sudo chmod a+r /usr/local/cuda-8.0/include/cudnn.h
yongqiang@famu-sys:~/software$ sudo chmod a+r /usr/local/cuda-8.0/lib64/libcudnn*
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ ll ./cuda/lib64/
总用量 291192
drwxrwxr-x 2 yongqiang yongqiang 4096 6月 25 13:06 ./
drwxrwxr-x 4 yongqiang yongqiang 4096 6月 25 13:06 ../
lrwxrwxrwx 1 yongqiang yongqiang 13 4月 13 2017 libcudnn.so -> libcudnn.so.6*
lrwxrwxrwx 1 yongqiang yongqiang 18 4月 13 2017 libcudnn.so.6 -> libcudnn.so.6.0.21*
-rwxr-xr-x 1 yongqiang yongqiang 154322864 4月 13 2017 libcudnn.so.6.0.21*
-rw-r--r-- 1 yongqiang yongqiang 143843808 4月 13 2017 libcudnn_static.a
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ ll /usr/local/cuda-8.0/lib64/libcudnn*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 /usr/local/cuda-8.0/lib64/libcudnn.so*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 /usr/local/cuda-8.0/lib64/libcudnn.so.6*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 /usr/local/cuda-8.0/lib64/libcudnn.so.6.0.21*
-rw-r--r-- 1 root root 143843808 6月 25 13:11 /usr/local/cuda-8.0/lib64/libcudnn_static.a
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ sudo ldconfig
yongqiang@famu-sys:~/software$
建立软链接
yongqiang@famu-sys:~/software$ ll ./cuda/lib64/*
lrwxrwxrwx 1 yongqiang yongqiang 13 4月 13 2017 ./cuda/lib64/libcudnn.so -> libcudnn.so.6*
lrwxrwxrwx 1 yongqiang yongqiang 18 4月 13 2017 ./cuda/lib64/libcudnn.so.6 -> libcudnn.so.6.0.21*
-rwxr-xr-x 1 yongqiang yongqiang 154322864 4月 13 2017 ./cuda/lib64/libcudnn.so.6.0.21*
-rw-r--r-- 1 yongqiang yongqiang 143843808 4月 13 2017 ./cuda/lib64/libcudnn_static.a
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ ll /usr/local/cuda-8.0/lib64/libcudnn*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 /usr/local/cuda-8.0/lib64/libcudnn.so*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 /usr/local/cuda-8.0/lib64/libcudnn.so.6*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 /usr/local/cuda-8.0/lib64/libcudnn.so.6.0.21*
-rw-r--r-- 1 root root 143843808 6月 25 13:11 /usr/local/cuda-8.0/lib64/libcudnn_static.a
yongqiang@famu-sys:~/software$
yongqiang@famu-sys:~/software$ cd /usr/local/cuda-8.0/lib64/
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$ ll libcudnn*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 libcudnn.so*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 libcudnn.so.6*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 libcudnn.so.6.0.21*
-rw-r--r-- 1 root root 143843808 6月 25 13:11 libcudnn_static.a
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$ sudo ln -sf libcudnn.so.6.0.21 libcudnn.so.6
[sudo] yongqiang 的密码:
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$ ll libcudnn*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 libcudnn.so*
lrwxrwxrwx 1 root root 18 6月 25 17:02 libcudnn.so.6 -> libcudnn.so.6.0.21*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 libcudnn.so.6.0.21*
-rw-r--r-- 1 root root 143843808 6月 25 13:11 libcudnn_static.a
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$ sudo ln -sf libcudnn.so.6 libcudnn.so
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$ ll libcudnn*
lrwxrwxrwx 1 root root 13 6月 25 17:03 libcudnn.so -> libcudnn.so.6*
lrwxrwxrwx 1 root root 18 6月 25 17:02 libcudnn.so.6 -> libcudnn.so.6.0.21*
-rwxr-xr-x 1 root root 154322864 6月 25 13:11 libcudnn.so.6.0.21*
-rw-r--r-- 1 root root 143843808 6月 25 13:11 libcudnn_static.a
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$
yongqiang@famu-sys:/usr/local/cuda-8.0/lib64$ sudo ldconfig
yongqiang@famu-sys:~$ which nvcc
/usr/local/cuda-8.0/bin/nvcc
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ cat /usr/local/cuda
cuda/ cuda-8.0/ cuda-9.0/
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ cat /usr/local/cuda/version.txt
CUDA Version 9.0.176
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ cat /usr/local/cuda-8.0/version.txt
CUDA Version 8.0.61
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ cat /usr/local/cuda-9.0/version.txt
CUDA Version 9.0.176
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
cat: /usr/local/cuda/include/cudnn.h: 没有那个文件或目录
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ cat /usr/local/cuda-8.0/include/cudnn.h | grep CUDNN_MAJOR -A 2
#define CUDNN_MAJOR 6
#define CUDNN_MINOR 0
#define CUDNN_PATCHLEVEL 21
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
#include "driver_types.h"
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ cat /usr/local/cuda-9.0/include/cudnn.h | grep CUDNN_MAJOR -A 2
cat: /usr/local/cuda-9.0/include/cudnn.h: 没有那个文件或目录
yongqiang@famu-sys:~$
yongqiang@famu-sys:~$ cat /usr/include/cudnn.h | grep CUDNN_MAJOR -A 2
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 1
#define CUDNN_PATCHLEVEL 2
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
#include "driver_types.h"
yongqiang@famu-sys:~$
3. 更新 cuDNN 版本时操作方式
- 更新 …/cuda/include/cudnn.h 和 …/cuda/lib64/libcudnn*。
- 重新生成软链接。
- 更新链接库 sudo ldconfig。
- 更新链接库 sudo ldconfig /usr/local/cuda-8.0/lib64/。
4. cuDNN v7.1.2 Runtime Library for Ubuntu16.04 (Deb) 安装查询
yongqiang@famu-sys:~$ dpkg -l | grep cudnn
ii libcudnn7 7.1.2.21-1+cuda9.0 amd64 cuDNN runtime libraries
ii libcudnn7-dev 7.1.2.21-1+cuda9.0 amd64 cuDNN development libraries and headers
ii libcudnn7-doc 7.1.2.21-1+cuda9.0 amd64 cuDNN documents and samples
yongqiang@famu-sys:~$
5. cat ~/.bashrc
yongqiang@famu-sys:~$ cat ~/.bashrc
......
# foreverstrong - 10.0
# export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
# export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64\${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
# foreverstrong - 9.0
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
# foreverstrong - 8.0
# export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
# export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
......