Microsoft Cognitive Toolkit (CNTK): CPU e GPU

Microsoft Cognitive Toolkit offre due diverse versioni di build, ovvero solo CPU e solo GPU.

Versione build solo CPU

La versione build solo CPU di CNTK utilizza Intel MKLML ottimizzato, dove MKLML è il sottoinsieme di MKL (Math Kernel Library) e rilasciato con Intel MKL-DNN come versione terminata di Intel MKL per MKL-DNN.

Versione build solo GPU

D'altra parte, la versione build solo GPU di CNTK utilizza librerie NVIDIA altamente ottimizzate come CUB e cuDNN. Supporta la formazione distribuita su più GPU e più macchine. Per una formazione distribuita ancora più veloce in CNTK, la versione GPU-build include anche:

  • SGD quantizzato a 1 bit sviluppato da MSR.

  • Algoritmi di formazione parallela SGD block-momentum.

Abilitazione della GPU con CNTK su Windows

Nella sezione precedente abbiamo visto come installare la versione base di CNTK da utilizzare con la CPU. Ora parliamo di come possiamo installare CNTK da utilizzare con una GPU. Ma, prima di approfondire la questione, prima dovresti avere una scheda grafica supportata.

Al momento, CNTK supporta la scheda grafica NVIDIA con supporto almeno CUDA 3.0. Per essere sicuro, puoi controllare ahttps://developer.nvidia.com/cuda-gpus se la tua GPU supporta CUDA.

Quindi, vediamo i passaggi per abilitare la GPU con CNTK su sistema operativo Windows -

Step 1 - A seconda della scheda grafica che stai utilizzando, devi prima disporre dei driver GeForce o Quadro più recenti per la tua scheda grafica.

Step 2 - Dopo aver scaricato i driver, è necessario installare il toolkit CUDA versione 9.0 per Windows dal sito Web di NVIDIA https://developer.nvidia.com/cuda-90-download-archive?target_os=Windows&target_arch=x86_64. Dopo l'installazione, esegui il programma di installazione e segui le istruzioni.

Step 3 - Successivamente, è necessario installare i binari cuDNN dal sito Web di NVIDIA https://developer.nvidia.com/rdp/form/cudnn-download-survey. Con la versione CUDA 9.0, cuDNN 7.4.1 funziona bene. Fondamentalmente, cuDNN è uno strato nella parte superiore di CUDA, utilizzato da CNTK.

Step 4 - Dopo aver scaricato i file binari cuDNN, è necessario estrarre il file zip nella cartella principale dell'installazione del toolkit CUDA.

Step 5- Questo è l'ultimo passaggio che consentirà l'utilizzo della GPU all'interno di CNTK. Esegui il seguente comando all'interno del prompt di Anaconda sul sistema operativo Windows -

pip install cntk-gpu

Abilitazione della GPU con CNTK su Linux

Vediamo come possiamo abilitare la GPU con CNTK su sistema operativo Linux -

Download del toolkit CUDA

Innanzitutto, è necessario installare il toolkit CUDA dal sito Web NVIDIA https://developer.nvidia.com/cuda-90-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1604&target_type = runfilelocal .

Esecuzione del programma di installazione

Ora, una volta che hai i binari sul disco, esegui il programma di installazione aprendo un terminale ed eseguendo il seguente comando e le istruzioni sullo schermo:

sh cuda_9.0.176_384.81_linux-run

Modifica lo script del profilo Bash

Dopo aver installato il toolkit CUDA sulla tua macchina Linux, devi modificare lo script del profilo BASH. Per questo, prima apri il file $ HOME / .bashrc nell'editor di testo. Ora, alla fine dello script, includi le seguenti righe:

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}}
Installing

Installazione delle librerie cuDNN

Alla fine dobbiamo installare i binari cuDNN. Può essere scaricato dal sito Web NVIDIAhttps://developer.nvidia.com/rdp/form/cudnn-download-survey. Con la versione CUDA 9.0, cuDNN 7.4.1 funziona bene. Fondamentalmente, cuDNN è uno strato nella parte superiore di CUDA, utilizzato da CNTK.

Una volta scaricata la versione per Linux, estraila nel file /usr/local/cuda-9.0 cartella utilizzando il seguente comando:

tar xvzf -C /usr/local/cuda-9.0/ cudnn-9.0-linux-x64-v7.4.1.5.tgz

Modificare il percorso del nome del file come richiesto.