今回はtensorflowのセットアップを紹介していこうと思うのですが、GPU版のtensorflowを使う為にはCuda ToolkitやcuDNNのセットアップを行う必要があります。
そこで今回はtensorflowをセットアップする前段階、Cuda ToolkitとcuDNNのセットアップを紹介していきます。
なお、CPU版のtensorflowはそのまま、pythonのバージョンを合わせてインストールで特に問題ありません。しかしGPUを使ったtensorflowはセットアップがちょっと厄介。
何が厄介なのかというと、GPUのドライバーのバージョン、CUDA toolkitのバージョン、それをコンパイルするソフトのバージョン、cuDNNのバージョンすべてが揃わないときちんと動作してくれません。
そこで、今回はGPUの確認からcuDNNのセットアップまでの紹介をしていきたいと思います。
Contents
セットアップの流れ
セットアップの流れです。以下の流れに沿ってやっていきます。
- GPUの確認
- GPUドライバーのバージョン確認
- GPUドライバーのバージョンにあったCUDA toolkit、cuDNNのバージョンを確認
- CUDA toolkitをコンパイルするソフトの確認
- CUDA toolkitをインストール
- cuDNNのインストール
の順に進めていきたいと思います。
GPUの確認
まずは、GPUの確認です。ご自身のPCに入っているGPUは確認しなくても分かっていると思われますが、念のため。
画面左下の検索ボックスに
”dxdiag”と入力するとDirectX診断ツールが開きます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-1.jpg?resize=833%2C681)
そのディスプレイタブを選択すると、現在お使いのGPUが表示されます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-2-1.jpg?resize=921%2C611)
ここに記載されているのが、ご自分のPCに載っているGPUです。なお、複数枚GPUがある場合は、ディスプレイタブが2個ある場合もあります。
GPUドライバーのバージョン確認
GPUのドライバーのバージョンの確認をします。
まず、NVIDIAのドライバダウンロードのページに行きます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/01/20210125_3.png?resize=836%2C393)
そこに先ほど調べたGPUの情報を入力していきます。そして、検索をクリック。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210125_4-2.png?resize=988%2C407)
そうすると、ドライバのバージョンが確認できます。また、ドライバは日々更新されていますので、再度ダウンロードしてインストールしておきます。
今調べたバージョンと、ご自身のPCのバージョンがあっていないとCUDAや、CuDNNの互換性がずれてしまうかもしれないので、ダウンロードしてインストールしておいてください。
GPUドライバーのバージョンにあったCUDA toolkit、cuDNNのバージョンを確認
つづいて、GPUのドライバとCUDA、cuDNNの互換性の確認です。
まずは、ドライバーとCUDAの互換性の確認です。
CUDA Toolkit Documentationのページに行きます。
ページを少し下がるとドライバーのバージョンとの互換性が確認できます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-9.jpg?resize=1024%2C503)
私の場合、ドライバのバージョンが”461.09”だったのでCUDA Toolkitのバージョンは”CUDA 11.2.1 Update1″が対応していることが分かります。
このCUDA Toolkit のバージョンを覚えておきましょう。
続いて、CUDA ToolkitのバージョンとcuDNNのバージョン、CUDA Toolkitをコンパイルするソフトの確認です。
tensorflowのホームページに行きます。
そこで、上のインストールをクリック
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-7.jpg?resize=1024%2C383)
左側に「windows」とありますので、それをクリック。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-6.jpg?resize=1024%2C528)
画面をスクロールしてページ中央ぐらいまで下がると、まずCPUの対応表がでてきて、その後にGPUの対応表が出てきます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-8.jpg?resize=1024%2C421)
一番右側のCUDAのバージョンと先ほどしらべたバージョンを確認します。
私のGPUバージョンでは”11.2.1 Update1”とのことでしたが、表にはありません。
その為、”11.0”をインストールすることにします。その場合、cuDNNのバージョンは”8.0”、コンパイラは”MSVC2019”となり、Pythonのバージョンは3.6~3.8が対応。tensorflowは2.4.0が対応していることが確認できます。
なお、ビルドツールとして「Bazel3.1.0」とありますが、これはcuDNN
をビルドするツールですが、ZIPファイルとしてダウンロードできますのでここは無視して大丈夫です。
ここまでくれば、後はそれぞれインストールしていくだけです。
CUDA toolkitをコンパイルするソフトの確認
まずは、CUDA Toolkitのコンパイラをダウンロードします。コンパイラとはプログラムをコンピュータが分かる言語に変更するプログラムとなります。CUDA ToolkitはC++という言語で書かれているようです。C++はコードを書いて実行する時にはコンパイルする必要があるのですが、CUDA Toolkitも同様にコンパイルする必要があるようです。
そのコンパイラはVisual Studioに含まれています。”MSVC2019”とはVisual Studio2019をインストールすれば完了です。カスタムインストールでコンパイラだけインストールする事もできますが、面倒なので丸ごとインストールしてしまうことがお勧めです。もし、ご自分の対応しているものが”MSVC 2015 Update 3”であればVisual Studio2015 Update 3をインストールします。
インターネットで”Visual Studio 2019 ダウンロード”と検索し以下のページに行きます。
Visual Studio 2019の”コミュニティー版”をダウンロードしてインストールします。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-1-1.png?resize=898%2C692)
インストールの際に気を付けることがあります。
”C++によるデスクトップ開発”にチェックを忘れないでください。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-5-1.jpg?resize=1024%2C572)
もし忘れてしまったら、コントロールパネルから”プログラムと機能”からVisual Studio2019を選択して”変更”から再度設定することが出来ます。
インストールが完了したら今度はCuda Toolkitのインストールに入ります。
CUDA toolkitをインストール
CUDA Toolkitダウンロードのページに行きます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-10.jpg?resize=1024%2C624)
「Cuda Toolkit」のダウンロードをクリックします。クリックすると最新のバージョンのダウンロードページとなります。たのバージョンをダウンロードする場合は下の「Archive of Previous CUDA Releases」をクリックします。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-11-1.jpg?resize=1024%2C573)
今回、私はバージョン”11.2.0”をダウンロードしました。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-12.jpg?resize=1024%2C441)
ダウンロードページではOS、概要、のバージョン、インストールタイプを選択します。インストールタイプはファイルをダウンロードしてからインストールする場合は”exe(ローカル)”を選択し、ダウンロードしないでインストールする場合は”exe(ネットワーク)”を選択します。ローカルの方がお勧めです。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-15.jpg?resize=1024%2C922)
ダウンロードが終わって、インストールです。こだわりが無ければデフォルトで。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-17-1.jpg?resize=412%2C186)
そのまま流れにそってインストールを続けていきます。
インストールオプションは高速で行いました。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-20.jpg?resize=428%2C319)
インストールが完了したら、次はcuDNNのインストールです。
cuDNNのインストール
cuDNNのダウンロードのページに行きます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-23.jpg?resize=1024%2C588)
「Download cuDNN」をクリックすると アカウントの登録が求められます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-24.jpg?resize=826%2C187)
初めての方は「Join now」をクリックします。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-25.jpg?resize=671%2C369)
何個か質問に答えるだけで終了です。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-27.jpg?resize=852%2C724)
ログインします。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-26-1.jpg?resize=1024%2C672)
「I Agree To the Terms of the」にチェックを入れます。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-13.jpg?resize=1024%2C575)
以前のバージョンをダウンロードしたい場合は下の
「Archived cuDNN Releases」をクリックします。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210225-14.jpg?resize=635%2C398)
cuDNNのバージョンを選択する際に、CUDA Toolkitの対応バージョンも書いてありますので確認してからクリックします。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210201dell-30.jpg?resize=1024%2C570)
ダウンロード前に、再度CUDAの対応を確認しwindows対応のファイルを選択します。今回、私はcuDNNのv8.1.0の”cuDNN Library for Windows (x86)”
をダウンロードしました。
ダウンロードが完了したら、ファイルをデスクトップに解凍しましょう。
解凍したフォルダ内には「bin」「include」「lib」の3つのフォルダが出来上がります。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210227-1.jpg?resize=492%2C390)
それらフォルダの中身をCuda Toolkitのフォルダにコピーします。
Cuda Toolkitのフォルダはデフォルトでインストールしているのなら
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2
なお、最後の「v11.2」はご自分がインストールしたバージョンとなります。
![](https://i0.wp.com/radiology-technologist.info/wp-content/uploads/2021/02/20210227-2.jpg?resize=940%2C537)
ここまででCuda Toolkitのセットアップから、cuDNNのセットアップまでが完了しました。
次回は、tensorflowのインストールから動作確認までを紹介したいと思います。
おつかれさまでした。