安装 NVIDIA cuDNN v6.0 for CUDA 8.0

安装 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 版本时操作方式

  1. 更新 …/cuda/include/cudnn.h 和 …/cuda/lib64/libcudnn*。
  2. 重新生成软链接。
  3. 更新链接库 sudo ldconfig。

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:~$

猜你喜欢

转载自blog.csdn.net/chengyq116/article/details/93708902