Neural Network Console 01(インストールとサンプル実行) の続き
関連記事
関連記事
参考情報
関連記事1以来、Neural Network Consoleをいじってみているが、エンジンにはCPUを用いていた。でもよく考えると、私の自宅PCにはGPUがついている。PCのスペックは以下。
- CPU:インテル® Core™ i5 4210U@1.70Gz-2.40GHz
- GPU:NVIDIA® GeForce® 840M (搭載ビデオメモリ 2GB)
- メモリー:12GB(関連記事2参照)
- HDD
- OS:Windows 10 Pro(関連記事3参照)
Setup(右上アイコン)→ENGINE→GPU でGPUを選択して、サンプルを実行してみた。
"…Failed `status == CUDNN_STATUS_SUCCESS`: NOT_INITIALIZED"
と言われて実行できない。
最初に思ったことは、そういえばこのPCは、GPUとIntel内臓グラフィックを適時切り替えて使うということだったので、GPUが使われていないのかも、だった。デバイスドライバーからIntel(R) HD Graphics Familyを無効にしてみたが、症状は変わらなかった。
CUDA(NVIDIAのGPUを演算に使う仕組み?。NNCはCUDAのみ対応)の何か(開発環境とか)を入れないといけないのかとも思ったが(そういう事を書いている方もいた)、Sonyさんはそんなことは言っていない。
SonyさんのFAQ(参考情報1)で、NVIDIAのドライバーを最新にするようにと言っているので、デバイスマネージャーから更新してみたが、最新だという事だった。バージョンは忘れたけど2016年のものだったので、もうちょっと新しいものがあるかと思い、NVIDIAからダウンロード、インストールしたところ(2018/02/23バージョン23.21.13.9101)、GPUエンジンで実行できるようになった。
効果を確認してみた。比較として、別のPC(X1 Carbon)でも確認してみた。こちらはCPUのみだが、CPUは新しい。
- CPU:インテル® Core™ i7-7500U@2.70GHz 2.90GHz
- メモリー:8GB
- SSD
測定結果:サンプルプロジェクトのTRAINING実行時間(Elapsed 分:秒)
*初めて実行するときにデータのコピーがあるようなので、一度実行してから計測
UX303LN CPU |
UX303LN GPU |
X1Carbon | |
---|---|---|---|
01_logistic_regression | 00:12 | 00:17 | 00:07 |
02_binary_cnn | 01:37 | 00:27 | 01:10 |
LeNet | 08:26 | 01:35 | 06:19 |
- 01だけは、CPUの方が速いが、それ以外はGPUの方が速い。特に時間が長いLeNetでの差は圧倒的。GPUを使うのに何かオーバーヘッドがあるけど、演算は圧倒的に速いという事かな。
- CPUの差はあるけど、大きな差ではない。CPUの能力差がその程度なのかも。またHDDとSSDの差もあるので、純粋にCPUの差だけではない。
ということで、GPUは確かに効果があるようだ。実用的なものに使うなら演算時間は相当伸びるだろうから、より効果は大きいだろう。
もともとGPU付きのPCを買ったのは、3D CADでも使うかもと思ったからだが、やっぱり家ではめったに使わない。ゲームもしないし、今までほとんど役立ったことはなかったが、こんなところで役立つとは。もちろん今後いっぱい使わないと意味はないけど。NVIDIAが持てはやされるわけだ。
Neural Network Console 03(自前データ)
Neural Network Console 04(繰り返し回数と学習結果 Max Epoch ) に続く
Neural Network Console 03(自前データ)
Neural Network Console 04(繰り返し回数と学習結果 Max Epoch ) に続く
0 件のコメント:
コメントを投稿