たくさんの場所を検索しましたが、インストールするにはどうすればよいですか。インストールされていることを確認する方法ではありません。 NVIDIAドライバがインストールされていること、およびCUDAがインストールされていることを確認できますが、CuDNNがインストールされていることを確認する方法がわかりません。助けていただければ幸いです。
PS。
これはカフェインプリメンテーション用です。現在、CuDNNが有効になっていなくてもすべてが機能しています。
CuDNNをインストールすることは単にCUDAディレクトリにファイルを置くことを含みます。 caffeのインストール中にルートとCuDNNオプションを正しく指定した場合は、CuDNNでコンパイルされます。
あなたはcmake
を使ってそれをチェックすることができます。ディレクトリcaffe/build
を作成し、そこからcmake ..
を実行します。設定が正しい場合は、次の行が表示されます。
-- 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
すべてが正しければ、そこからcaffeをインストールするためのmake
命令を実行するだけです。
CuDNNのインストールは単にいくつかのファイルをコピーすることです。したがって、CuDNNがインストールされているかどうか(そしてどのバージョンを持っているか)を確認するには、それらのファイルを確認するだけで済みます。
ステップ1:nvidia開発者アカウントと ここにcudnnをダウンロード (約80 MB)を登録します。あなたはあなたのcudaバージョンを入手するためにnvcc --version
を必要とするかもしれません。
ステップ2:あなたのcudaインストールがどこにあるかチェックしてください。ほとんどの人にとって、それは/usr/local/cuda/
になります。 which nvcc
で確認できます。
ステップ3:ファイルをコピーします。
$ 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*
パスを調整する必要があるかもしれません。インストールのステップ2を参照してください。
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
のようなエラーが出たとき
F tensorflow/stream_executor/cuda/cuda_dnn.cc:427] could not set cudnn filter descriptor: CUDNN_STATUS_BAD_PARAM
tensorFlowでは、v5の代わりにCuDNN v4を使用することを検討するかもしれません。
apt
を使ってインストールしたUbuntuユーザー : https://askubuntu.com/a/767270/10425
まずインストールされたcudnnファイルを見つけて、次にこのファイルを解析する必要があります。ファイルを見つけるには、次のようにします。
whereis cudnn.h
この場所が見つかったら、次の操作を実行できます(${CUDNN_H_PATH}
をパスに置き換えます)。
cat ${CUDNN_H_PATH} | grep CUDNN_MAJOR -A 2
結果は次のようになります。
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 5
#define CUDNN_PATCHLEVEL 0
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
つまり、バージョンは7.5.0です。
このインストール方法では、/ usr/includeおよび/ usr/lib/cuda/lib64にcudaがインストールされます。したがって、調べる必要のあるファイルは/usr/include/cudnn.hにあります。
CUDNN_H_PATH=/usr/include/cudnn.h
cat ${CUDNN_H_PATH} | grep CUDNN_MAJOR -A 2
CuDNN v5以降(少なくともSudo dpkg -i <library_name>.deb
パッケージでインストールするとき)からは、次のものを使う必要があるようです。
cat /usr/include/x86_64-linux-gnu/cudnn_v*.h | grep CUDNN_MAJOR -A 2
例えば:
$ 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"
cuDNNバージョン6.0.21がインストールされていることを示します。
CentOSで、私はCUDAの場所を見つけました:
$ whereis cuda
cuda: /usr/local/cuda
私はそれから私がこの場所から見つけたcudnn.hファイルの上の手順を使いました:
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
CUDAのインストールを確認するには、belowコマンドを実行してください 正しくインストールされていれば、belowコマンドを実行してもエラーは発生せず、正しいバージョンのライブラリが表示されます。
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
CuDNNのインストールを確認するには、以下のコマンドを実行してください 、CuDNNが正しくインストールされていればエラーにはなりません。
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
_または_
あなたは任意のディレクトリから以下のコマンドを実行することができます
nvcc -V
それはこのような出力を与えるはずです
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
cuDNNのバージョン取得[Linux]
以下を使用してcuDNNのパスを見つけます。
$ whereis cuda
cuda: /usr/local/cuda
それからこれを使ってヘッダファイルからバージョンを取得します。
$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
cuDNNのバージョン取得【Windows】
以下を使用してcuDNNのパスを見つけます。
C:\>where cudnn*
C:\Program Files\cuDNN6\cuda\bin\cudnn64_6.dll
それからこれを使ってヘッダファイルからバージョンをダンプします。
type "%PROGRAMFILES%\cuDNN6\cuda\include\cudnn.h" | findstr "CUDNN_MAJOR CUDNN_MINOR CUDNN_PATCHLEVEL"
CUDAバージョンの取得
これはLinuxとWindowsの両方で動作します。
nvcc --version
.deb
を介してubuntuにインストールする場合は、Sudo apt search cudnn | grep installed
を使用できます。
./mnistCUDNN
で/usr/src/cudnn_samples_v7/mnistCUDNN
を実行する
これが一例です。
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