Come posso installare CuDNN su Ubuntu 16.04?

86

Per TensorFlow mi piacerebbe installare cuda e CuDNN. Come posso farlo su Ubuntu 16.04?

    
posta Martin Thoma 04.05.2016 - 08:12

8 risposte

122

Passaggio 0: Installa cuda dai repository standard. (Vedi Come posso installare CUDA su Ubuntu 16.04? )

Passaggio 1: registrare un account sviluppatore nvidia e scaricare cudnn qui (circa 80 MB)

Passaggio 2: verifica dove si trova l'installazione di cuda. Per l'installazione dal repository è /usr/lib/... e /usr/include . Altrimenti, sarà /usr/local/cuda/ o /usr/local/cuda-<version> . Puoi controllarlo con which nvcc o ldconfig -p | grep cuda

Passaggio 3: copia i file:

Installazione del repository:

$ 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*

Installazione del file Run:

$ 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*
    
risposta data Martin Thoma 04.05.2016 - 08:12
27

Da 5.1 in poi non è possibile installare secondo quanto menzionato da @Martin. Scarica 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 da sito nvidia e installa uno per uno seguendo il modo.

 sudo dpkg -i <library_name>.deb
    
risposta data GPrathap 19.05.2017 - 07:17
11
  1. Registrati sul sito Web di NVidia. Potrebbe essere necessario un giorno o due prima che venga approvato il tuo account. Almeno questo era il caso quando mi sono registrato.
  2. Scarica e installa l'ultimo CUDA da NVidia , o l'ultima versione che si adatta al software con cui lavorerai, se ce ne sono, in questo caso la tua versione di T-Flow.

    Nota che l'installazione tramite il gestore di pacchetti standard di ubuntu tramite clic probabilmente non funzionerà in modo appropriato.

    Invece, probabilmente dovrai seguire queste istruzioni nel terminale per installare .deb pakage. Dopodiché dovrai aggiungere alcune righe a .bashrc o laddove appropriato nel tuo caso. Ad esempio, se stai configurando un server, probabilmente sarà un posto diverso, forse da qualche parte prima del caricamento automatico della tua app, poiché .bashrc probabilmente non verrà eseguito in quel caso.

  3. Scarica CuDNN da NVidia

    Ho usato la versione "Library for Linux", non ho avuto molta fortuna con i pacchetti .deb .

  4. Puoi trovare dove si trova CUDA via %codice%. Di solito which nvcc sarà un collegamento simbolico alla versione attualmente installata.

  5. Apri l'archivio CuDNN e copia i contenuti appropriati in posizioni appropriate all'interno della cartella di installazione CUDA ( /usr/local/cuda/ e cuda/lib64/ ). Solitamente cuda/include/ e lo faccio da lì visivamente.
risposta data Íhor Mé 11.08.2016 - 18:35
5

Avanti veloce 2018 e NVIDIA ora fornisce cuDNN 7.x per il download. I passaggi di installazione sono ancora simili a quelli descritti da @GPrathap. Ma se vuoi sostituire la vecchia versione cuDNN con quella nuova, devi prima rimuoverla prima dell'installazione.

Per ricapitolare:

Passaggio 0. Verificare di aver già installato il toolkit CUDA. Procedere con l'installazione del toolkit CUDA se non si è.

Passaggio 1. Vai al portale per sviluppatori NVIDIA link e scarica cuDNN.

Passaggio 2. Se hai precedentemente installato cuDNN, rimuovilo

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

Passaggio 3. Installa la libreria cuDNN (runtime, dev, doc) usando dpkg

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

Passaggio 4. Se si desidera trovare la posizione in cui è stata installata la libreria, è possibile aggiornare l'indice di individuazione e quindi trovare la posizione della libreria.

sudo updatedb
locate libcudnn

Se si sta specificando l'installazione di cuDNN 7.x con CUDA toolkit 9.1, questo articolo fornisce più elaborazioni che possono essere di aiuto: link

    
risposta data Mike 30.03.2018 - 05:02
2

Inoltre, puoi scaricare i pacchetti deb per le distribuzioni basate su Debian.

Dalla pagina Web NVIDIA, per il profilo sviluppatore sono disponibili i seguenti file:

  • cuDNN v5.1 Libreria di runtime per Linux (Deb)
  • cuDNN v5.1 Developer Library per Linux (Deb)
  • cuDNN v5.1 Esempi di codice e guida per l'utente Linux (Deb)

Ho provato questo, sulla mia macchina con Debian (Stretch) e TensorFlow sta funzionando!

    
risposta data LAraque 28.06.2016 - 18:56
2

Aggiunta di un dettaglio importante alle risposte ancora valide di @Martin Thoma e @ Íhor Mé: Dopo aver copiato i file libcudnn nelle directory cuda, devi aggiornare il tuo file .bashrc:

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

Devi quindi aggiungere la directory include a qualsiasi file di configurazione che lo utilizza. Caffe ad es. ha un file di configurazione che devi modificare prima di compilarlo con make. Per questo, modifica caffe / Makefile.config per aggiungere i percorsi a queste variabili di configurazione (aggiungi spazi bianchi tra i percorsi):

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

Per ogni finestra di terminale corrente vuoi che queste modifiche siano efficaci, non dimenticare di eseguire il file una volta!

. ~/.bashrc
    
risposta data Agile Bean 05.04.2018 - 07:57
0

la risposta è corretta ma per cuDNN 5.1 alcuni nomi sono stati modificati. Quindi, se usi questa versione dopo aver estratto il file cuDNN, troverai due cartelle: lib e include. cambia il nome del file * .h nella cartella include in cudnn.h e poi segui link . questo cambiamento è necessario se si desidera utilizzare cuDNN per Caffe!

    
risposta data abolfazl taghribi 12.01.2017 - 19:03
0

In 16.04 se stai installando CUDA direttamente dal sito Web di Nvidia e stai anche creando Tensorflow dal sorgente, puoi specificare la directory che vuoi indicare come Cudnn. Di default è:

/usr/include/x86_64-linux-gnu

Quando costruisci Tensorflow ti chiederà quale versione vuoi indicare che stai usando per Cudnn. Quindi dopo chiederà dove si trova. Basta indicare la directory sopra e funzionerà correttamente. Dovrebbe creare un file wheel in quel punto e puoi installarlo con pip.

    
risposta data Goddard 15.02.2018 - 01:21

Leggi altre domande sui tag