cuda - for - ¿Cómo verificar la instalación de CuDNN?
download cudnn 6 (7)
He buscado en muchos lugares, pero TODO lo que obtengo es CÓMO instalarlo, no cómo verificar que esté instalado. Puedo verificar que mi controlador NVIDIA esté instalado y que CUDA esté instalado, pero no sé cómo verificar que CuDNN esté instalado. La ayuda será muy apreciada, gracias!
PD.
Esto es para una implementación caffe.
Actualmente todo funciona sin CuDNN habilitado.
Al instalar en ubuntu a través de
.deb
, puede usar
sudo apt search cudnn | grep installed
sudo apt search cudnn | grep installed
Ejecute
./mnistCUDNN
en
/usr/src/cudnn_samples_v7/mnistCUDNN
Aquí hay un ejemplo:
cudnnGetVersion() : 7005 , CUDNN_VERSION from cudnn.h : 7005 (7.0.5)
Host compiler version : GCC 5.4.0
There are 1 CUDA capable devices on your machine :
device 0 : sms 30 Capabilities 6.1, SmClock 1645.0 Mhz, MemSize (Mb) 24446, MemClock 4513.0 Mhz, Ecc=0, boardGroupID=0
Using device 0
Instalar CuDNN solo implica colocar los archivos en el directorio CUDA. Si ha especificado las rutas y la opción CuDNN correctamente durante la instalación de caffe, se compilará con CuDNN.
Puede verificar eso usando
cmake
.
Cree un directorio
caffe/build
y ejecute
cmake ..
desde allí.
Si la configuración es correcta, verá estas líneas:
-- Found cuDNN (include: /usr/local/cuda-7.0/include, library: /usr/local/cuda-7.0/lib64/libcudnn.so)
-- NVIDIA CUDA:
-- Target GPU(s) : Auto
-- GPU arch(s) : sm_30
-- cuDNN : Yes
Si todo está correcto, simplemente ejecute las órdenes para instalar caffe desde allí.
La instalación de CuDNN solo está copiando algunos archivos. Por lo tanto, para verificar si CuDNN está instalado (y qué versión tiene), solo necesita verificar esos archivos.
Instalar CuDNN
Paso 1: Registre una cuenta de desarrollador de nvidia y
descargue cudnn aquí
(aproximadamente 80 MB).
Es posible que necesite
nvcc --version
para obtener su versión de cuda.
Paso 2: comprueba dónde está tu instalación de cuda.
Para la mayoría de las personas, será
/usr/local/cuda/
.
Puedes comprobarlo con
which nvcc
.
Paso 3: copia los archivos:
$ cd folder/extracted/contents
$ sudo cp include/cudnn.h /usr/local/cuda/include
$ sudo cp lib64/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
Comprobar versión
Puede que tenga que ajustar el camino. Vea el paso 2 de la instalación.
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
Notas
Cuando recibes un error como
F tensorflow/stream_executor/cuda/cuda_dnn.cc:427] could not set cudnn filter descriptor: CUDNN_STATUS_BAD_PARAM
con TensorFlow, podría considerar usar CuDNN v4 en lugar de v5.
Usuarios de Ubuntu que lo instalaron a través de
apt
:
https://askubuntu.com/a/767270/10425
Primero necesita encontrar el archivo cudnn instalado y luego analizar este archivo. Para encontrar el archivo, puede usar:
whereis cudnn.h
CUDNN_H_PATH=$(whereis cudnn.h)
Si eso no funciona, consulte "Distribuciones de Redhat" a continuación.
Una vez que encuentre esta ubicación, puede hacer lo siguiente (reemplazando
${CUDNN_H_PATH}
con la ruta):
cat ${CUDNN_H_PATH} | grep CUDNN_MAJOR -A 2
El resultado debería verse así:
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 5
#define CUDNN_PATCHLEVEL 0
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
Lo que significa que la versión es 7.5.0.
Ubuntu 18.04 (a través de sudo apt install nvidia-cuda-toolkit)
Este método de instalación instala cuda en / usr / include y / usr / lib / cuda / lib64, por lo tanto, el archivo que debe consultar está en /usr/include/cudnn.h.
CUDNN_H_PATH=/usr/include/cudnn.h
cat ${CUDNN_H_PATH} | grep CUDNN_MAJOR -A 2
Debian y Ubuntu
Desde CuDNN v5 en adelante (al menos cuando instala a través de
sudo dpkg -i <library_name>.deb
packages), parece que podría necesitar usar lo siguiente:
cat /usr/include/x86_64-linux-gnu/cudnn_v*.h | grep CUDNN_MAJOR -A 2
Por ejemplo:
$ cat /usr/include/x86_64-linux-gnu/cudnn_v*.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"
indica que CuDNN versión 6.0.21 está instalada.
Distribuciones Redhat
En CentOS, encontré la ubicación de CUDA con:
$ whereis cuda
cuda: /usr/local/cuda
Luego utilicé el procedimiento sobre el archivo cudnn.h que encontré desde esta ubicación:
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
Obteniendo la versión cuDNN [Linux]
Use lo siguiente para encontrar la ruta para cuDNN:
$ whereis cuda
cuda: /usr/local/cuda
Luego use esto para obtener la versión del archivo de encabezado,
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
Obteniendo la versión cuDNN [Windows]
Use lo siguiente para encontrar la ruta para cuDNN:
C:/>where cudnn*
C:/Program Files/cuDNN6/cuda/bin/cudnn64_6.dll
Luego use esto para volcar la versión del archivo de encabezado,
type "%PROGRAMFILES%/cuDNN6/cuda/include/cudnn.h" | findstr "CUDNN_MAJOR CUDNN_MINOR CUDNN_PATCHLEVEL"
Obteniendo la versión CUDA
Esto funciona tanto en Linux como en Windows:
nvcc --version
Para verificar la instalación de CUDA, ejecute el siguiente comando , si está instalado correctamente, el siguiente comando no arrojará ningún error e imprimirá la versión correcta de la biblioteca.
function lib_installed() { /sbin/ldconfig -N -v $(sed ''s/:/ /'' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep $1; }
function check() { lib_installed $1 && echo "$1 is installed" || echo "ERROR: $1 is NOT installed"; }
check libcuda
check libcudart
Para verificar la instalación de CuDNN, ejecute el siguiente comando , si CuDNN está instalado correctamente, no obtendrá ningún error.
function lib_installed() { /sbin/ldconfig -N -v $(sed ''s/:/ /'' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep $1; }
function check() { lib_installed $1 && echo "$1 is installed" || echo "ERROR: $1 is NOT installed"; }
check libcudnn
O
puede ejecutar el siguiente comando desde cualquier directorio
nvcc -V
debería dar salida a algo como esto
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