Przeszukałem wiele miejsc, ale wszystko, co otrzymuję, to JAK go zainstalować, a nie jak sprawdzić, czy jest zainstalowany. Mogę sprawdzić, czy zainstalowany jest mój sterownik NVIDIA i CUDA, ale nie wiem, jak sprawdzić, czy CuDNN jest zainstalowany. Pomoc będzie bardzo mile widziana, dzięki!
PS.
To jest dla implementacji caffe. Obecnie wszystko działa bez włączonego CuDNN.
cuda
computer-vision
caffe
conv-neural-network
cudnn
alfredox
źródło
źródło
USE_CUDNN
włączoną i bez włączoną?Odpowiedzi:
Instalacja CuDNN polega po prostu na umieszczeniu plików w katalogu CUDA. Jeśli poprawnie określiłeś trasy i opcję CuDNN podczas instalacji caffe, zostanie ona skompilowana z CuDNN.
Możesz to sprawdzić za pomocą
cmake
. Utwórz katalogcaffe/build
i uruchom gocmake ..
stamtąd. Jeśli konfiguracja jest prawidłowa, zobaczysz te linie:Jeśli wszystko jest w
make
porządku, po prostu uruchom polecenia instalacji caffe z tego miejsca.źródło
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
Instalacja CuDNN to tylko kopiowanie niektórych plików. Dlatego, aby sprawdzić, czy CuDNN jest zainstalowany (i jaką masz wersję), musisz tylko sprawdzić te pliki.
Zainstaluj CuDNN
Krok 1: Zarejestruj konto programisty nvidia i pobierz cudnn tutaj (około 80 MB). Być może będziesz musiał
nvcc --version
pobrać swoją wersję cuda.Krok 2: Sprawdź, gdzie jest Twoja instalacja CUDA. Dla większości ludzi tak będzie
/usr/local/cuda/
. Możesz to sprawdzićwhich nvcc
.Krok 3: Skopiuj pliki:
Sprawdź wersję
Być może będziesz musiał dostosować ścieżkę. Zobacz krok 2 instalacji.
Uwagi
Gdy pojawi się błąd typu
w przypadku TensorFlow można rozważyć użycie CuDNN v4 zamiast v5.
Użytkownicy Ubuntu, którzy zainstalowali go przez
apt
: https://askubuntu.com/a/767270/10425źródło
cat /usr/include/cudnn.h | grep CUDNN_MAJOR -A 2
/usr/local/cuda/**/*.h
Najpierw musisz znaleźć zainstalowany plik cudnn, a następnie przeanalizować ten plik. Aby znaleźć plik, możesz użyć:
Jeśli to nie zadziała, zobacz „Dystrybucje Redhat” poniżej.
Po znalezieniu tej lokalizacji możesz wykonać następujące czynności (zastępując
${CUDNN_H_PATH}
ścieżką):Wynik powinien wyglądać mniej więcej tak:
Co oznacza, że wersja to 7.5.0.
Ubuntu 18.04 (przez sudo apt zainstaluj nvidia-cuda-toolkit)
Ta metoda instalacji instaluje cuda w / usr / include i / usr / lib / cuda / lib64, stąd plik, na który musisz spojrzeć, znajduje się w /usr/include/cudnn.h.
Debian i Ubuntu
Począwszy od CuDNN v5 (przynajmniej w przypadku instalacji za pośrednictwem
sudo dpkg -i <library_name>.deb
pakietów) może być konieczne użycie następujących elementów:Na przykład:
wskazuje, że zainstalowano CuDNN w wersji 6.0.21.
Dystrybucje Redhat
Na CentOS znalazłem lokalizację CUDA z:
Następnie skorzystałem z procedury dotyczącej pliku cudnn.h, który znalazłem z tej lokalizacji:
źródło
Aby sprawdzić instalację CUDA, uruchom poniższe polecenie , jeśli zostało zainstalowane poprawnie, to poniższe polecenie nie zgłosi żadnego błędu i wydrukuje poprawną wersję biblioteki.
Aby sprawdzić instalację CuDNN, uruchom poniższe polecenie , jeśli CuDNN jest zainstalowany poprawnie, nie pojawi się żaden błąd.
LUB
możesz uruchomić poniższe polecenie z dowolnego katalogu
powinien dać wynik mniej więcej taki
źródło
nvcc
i sprawdź wyjście. sprawdź poniższy link również devtalk.nvidia.com/default/topic/457664/…Pobieranie wersji cuDNN [Linux]
Użyj następujących, aby znaleźć ścieżkę do cuDNN:
Jeśli powyższe nie działa, spróbuj tego:
Pobieranie wersji cuDNN [Windows]
Użyj następujących, aby znaleźć ścieżkę do cuDNN:
Następnie użyj tego, aby zrzucić wersję z pliku nagłówkowego,
Pobieranie wersji CUDA
Działa to zarówno w systemie Linux, jak i Windows:
źródło
cudnn.h
pliku w mojej instalacji cuda i pomyślałem, że nie mam zainstalowanego cudnn. Ale później uruchomiłem przykładowy kodtype "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\include\cudnn.h" | findstr "CUDNN_MAJOR CUDNN_MINOR CUDNN_PATCHLEVEL"
Podczas instalacji na Ubuntu przez
.deb
możesz użyćsudo apt search cudnn | grep installed
źródło
prowadzony
./mnistCUDNN
w/usr/src/cudnn_samples_v7/mnistCUDNN
Oto przykład:
źródło
mnistCUDNN
nie powinien znajdować się w tym katalogu, ponieważ nie powinien to być katalog z możliwością zapisu. Próbki powinny raczej zostać skopiowane jako podkatalog do katalogu domowego użytkownika i tam zbudowane. Więc jeśli został poprawnie zainstalowany i zbudowany zgodnie z instrukcją na stronie Nvidii,mnistCUDNN
będzie dostępny~/cudnn_samples_v7
cudnn.h
został zainstalowany/usr/include/cudnn.h
, nie wiem dlaczego, ale stało się to wcześniej, gdy instalowałem CUDA zapt-get
. Tym razem korzystałemdpkg
i nic nie zmieniłem ...