¿Cómo puedo instalar CuDNN en Ubuntu 16.04?

86

Para TensorFlow, me gustaría instalar cuda y CuDNN. ¿Cómo hago eso en Ubuntu 16.04?

    
pregunta Martin Thoma 04.05.2016 - 06:12

8 respuestas

122

Paso 0: instala cuda desde los repositorios estándar. (Consulte ¿Cómo puedo instalar CUDA en Ubuntu 16.04? )

Paso 1: registrar una cuenta de desarrollador de nvidia y descargar cudnn aquí (aproximadamente 80 MB)

Paso 2: comprueba dónde está tu instalación de cuda. Para la instalación desde el repositorio, es /usr/lib/... y /usr/include . De lo contrario, será /usr/local/cuda/ o /usr/local/cuda-<version> . Puede verificarlo con which nvcc o ldconfig -p | grep cuda

Paso 3: copiar los archivos:

Instalación del repositorio:

$ cd folder/extracted/contents
$ sudo cp -P include/cudnn.h /usr/include
$ sudo cp -P lib64/libcudnn* /usr/lib/x86_64-linux-gnu/
$ sudo chmod a+r /usr/lib/x86_64-linux-gnu/libcudnn*

Instalación de archivo de ejecución:

$ 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*
    
respondido por el Martin Thoma 04.05.2016 - 06:12
28

De 5.1 en adelante no se puede instalar de acuerdo con lo que mencionó @Martin. Descargue libcudnn6_6.0.21-1+cuda8.0_amd64.deb, libcudnn6-dev_6.0.21-1+cuda8.0_amd64.deb, libcudnn6-doc_6.0.21-1+cuda8.0_amd64.deb del sitio de nvidia e instálelo de uno en uno.

 sudo dpkg -i <library_name>.deb
    
respondido por el GPrathap 19.05.2017 - 05:17
11
  1. Registrarse en el sitio web de NVidia. Pueden pasar un día o dos antes de que se apruebe su cuenta. Al menos ese solía ser el caso cuando me registré.
  2. Descargue e instale el último CUDA de NVidia , o la última versión que se ajuste al software con el que trabajará, en su caso, en este caso su versión de T-Flow.

    Tenga en cuenta que la instalación a través del administrador de paquetes estándar de ubuntu haciendo clic probablemente no funcionará adecuadamente.

    En su lugar, es probable que tengas que seguir estas instrucciones en la terminal para instalar .deb pakage. Después de eso, tendrá que agregar algunas líneas a .bashrc , o cuando corresponda en su caso. Por ejemplo, si está configurando un servidor, probablemente sea un lugar diferente, tal vez en algún lugar antes del inicio automático de su aplicación, ya que es probable que .bashrc no se ejecute en ese caso.

  3. Descargar CuDNN de NVidia

    Utilicé la versión "Biblioteca para Linux", no tuve mucha suerte con .deb packages.

  4. Puede encontrar dónde se encuentra CUDA a través de %código%. Por lo general, which nvcc será un enlace simbólico a su versión instalada actualmente.

  5. Abra el archivo CuDNN y copie los contenidos apropiados en los lugares apropiados dentro de la carpeta de instalación de CUDA ( /usr/local/cuda/ y cuda/lib64/ ). Por lo general, cuda/include/ y lo hago desde allí visualmente.
respondido por el Íhor Mé 11.08.2016 - 16:35
5

Avance rápido 2018 y NVIDIA ahora ofrece cuDNN 7.x para descargar. Los pasos de instalación son similares a los descritos por @GPrathap. Pero si desea reemplazar la versión antigua de cuDNN por la más nueva, debe eliminarla primero antes de la instalación.

Para recapitular:

Paso 0. Verifique que ya haya instalado el kit de herramientas CUDA. Proceda con la instalación del kit de herramientas CUDA si no lo ha hecho.

Paso 1. Vaya al portal para desarrolladores de NVIDIA enlace y descargue cuDNN.

Paso 2. Si ya instaló cuDNN, quítelo

sudo dpkg -r <old-cudnn-runtime>.deb
sudo dpkg -r <old-cudnn-dev>.deb

Paso 3. Instale la biblioteca cuDNN (runtime, dev, doc) usando dpkg

sudo dpkg -i <new-cudnn-runtime>.deb
sudo dpkg -i <new-cudnn-dev>.deb
sudo ldconfig

Paso 4. Si desea encontrar dónde se instaló la biblioteca, puede actualizar el índice de localización y luego buscar la ubicación de la biblioteca.

sudo updatedb
locate libcudnn

Si está instalando específicamente cuDNN 7.x contra CUDA toolkit 9.1, este artículo proporciona más detalles que pueden ser de alguna ayuda: enlace

    
respondido por el Mike 30.03.2018 - 03:02
2

Además, puede descargar los paquetes Deb para distribuciones basadas en Debian.

Desde la página web de NVIDIA, para el perfil de desarrollador están disponibles los siguientes archivos:

  • Biblioteca de tiempo de ejecución de cuDNN v5.1 para Linux (Deb)
  • biblioteca de desarrolladores cuDNN v5.1 para Linux (Deb)
  • cuDNN v5.1 Ejemplos de código y guía del usuario Linux (Deb)

¡Probé esto, sobre mi máquina con Debian (Stretch) y TensorFlow está funcionando!

    
respondido por el LAraque 28.06.2016 - 16:56
2

Agregar un detalle importante a las respuestas aún válidas de @Martin Thoma y @ Íhor Mé: Después de copiar los archivos libcudnn a los directorios de cuda, debe actualizar su archivo .bashrc:

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64"
export CUDA_HOME=/usr/local/cuda

Luego debe agregar el directorio de inclusión a cualquier archivo de configuración que lo use. Caffe, p. tiene un archivo de configuración que debe editar antes de compilar con make. Para esto, edite caffe / Makefile.config para agregar las rutas a estas variables de configuración (agregue espacios en blanco entre las rutas):

INCLUDE_DIRS: /usr/local/caffe/cuda/include/ 
LIBRARY_DIRS: /usr/local/cuda/lib64/

Por cada ventana de terminal actual que desee que estos cambios sean efectivos, ¡no olvide ejecutar el archivo una vez!

. ~/.bashrc
    
respondido por el Agile Bean 05.04.2018 - 05:57
0

la respuesta es correcta pero para cuDNN 5.1 algunos nombres han sido cambiados. Entonces, si usa esta versión después de extraer el archivo cuDNN, encontrará dos carpetas: lib e include. cambie el nombre del archivo * .h en la carpeta include por cudnn.h y luego siga enlace . ¡Este cambio es necesario si quiere usar cuDNN para Caffe!

    
respondido por el abolfazl taghribi 12.01.2017 - 18:03
0

En 16.04 si está instalando CUDA directamente desde el sitio web de Nvidia y también está creando Tensorflow desde la fuente, puede especificar el directorio que desea indicar como Cudnn. Por defecto es:

/usr/include/x86_64-linux-gnu

Cuando construya Tensorflow, le preguntará qué versión desea indicar que está utilizando para Cudnn. Luego, después de eso, preguntará dónde se encuentra. Simplemente indique el directorio de arriba y funcionará bien. Debería crear un archivo de rueda en ese punto y puede instalarlo con pip.

    
respondido por el Goddard 15.02.2018 - 00:21

Lea otras preguntas en las etiquetas