2018年5月30日水曜日

[雑記] Deep Learning向けPC考察

Deep Learningで趣味(?)でまずやってみる場合でも、結構なマシンパワーを必要とすることがわかりました。

結局GTX1080とCore i7 7700Kを搭載したPCを中古で手に入れたのですが、その際に考察したことをまとめておきます。

■GPUについて
 現状GeForce1択です。

 AMD Radeonも使えないことないようですが、工夫が必要そうです。
 すでにRadeon VAGAもっているので有効活用したいという方は、ROCmという単語で調べてみてください。

 GPUをフルに使用する以前にCPU側の前処理でつまずく事が多いので、GPU本体のチップ性能はそれほど効いてきません。
https://github.com/tobigithub/tensorflow-deep-learning/wiki/tf-benchmarks
 GTX1070とGTX1080での処理速度差は3%ほどです。

 ところが、メモリ量は読み込めるモデルやミニバッチのサイズなどに直接影響します。
 画像系をやり始めると、もりもり消費してしまいます。 
 メモリ不足になると、遅くなるのではなくてout of memoryで落ちることが多々あるので致命的です。そうすると、データをCPU側メモリにオフロードする必要が出てきて同期のために一挙に速度が落ちます。

 ということで、現状選ぶなら、
  GTX1070(8GB)
 です。
 もっと良いのがいいのであれば、GTX1080(8G)ではなくGTX1080Ti(11G)を検討しましょう。
 ちなみに秋に発売開始されるといわれているGTX1180はメモリ16Gと予想されています。ほしい・・・・。現実的な価格帯なら。
 GTX1170も16GBならそちらでもOKかも。

■CPUについて
 最初私もCPUはそこまで必要ないと思っていました・・・・。

 実際やりはじめると、データの整形など前処理にCPUを利用するので、CPUのスペックがかなり効いてきます。
 というよりCPUがしょぼいとGPUが利用されません。

 なるべくCore i7の最高位をお勧めします。コア数もそこそこ必要ですが、前処理なのでシングルスレッド性能も効いてきます。そのためコア数が多くてクロック数が低いものよりコア数そこそこでクロック数が高いものがおすすめです。

 いまですと、Core i7 8700 or Core i5 8600ぐらいが最低ラインかと。

 プログラムの腕があれば(Pythonに慣れていれば)、きっと前処理もマルチスレッド化して、最適化できるのでしょうが・・・(というより何もしなくてもある程度スレッド使ってくれているので内部のライブラリで何とかしてくれていると思われます・・・)

 なるべく前処理の段階でtorch.Tensorにしておいて、GPUに処理を任せようとすると今度はメモリ不足に陥るという2段構えの罠にはまって先週バタバタしてました。

■他
 ほかの項目はそれほど気にしなくてもいいかもしれません。
 ディープラーニング以外にも常用するのでしたらSSDは必須です。

 電源 500W~800W
 メモリ 8G以上
 ケース 廃熱すごいので、通気性の高いやつ
 HDD&SSD お好みで。

BTOパソコンですと、このあたりになるかと思います。

LEVEL-M0B6-i7-TN [Windows 10 Home]
https://www.pc-koubou.jp/products/detail.php?product_id=629916
 
・・・・しかし、Deep Learning回すとPCから温風吹き出てきます。
冬場はいいけど、今からの季節は厳しそうです。

ちょっとだけマイニング回してみたら、温風どころか熱風が出てきて焦りました。あっという間に壊れそうです(汗

「MT4でFXを勝ち抜く研究をするブログ」で公開している無料インジケータは、こちらの一覧から。
インジケータ一覧

Twitterもよろしくお願いします。
https://twitter.com/mt4program
Trading View プロフィール

ブログランキングにご協力よろしくお願いします。m(._.)m
にほんブログ村 為替ブログ FX テクニカルトレード派へ
にほんブログ村

お約束ですが、本ブログは、投資に対する利益を約束する物ではありません。最終的には自己責任によるご判断よろしくお願いいたします。