変わりモノがいい!

変わりモノには価値がある・・・ハズ?

Surface Laptop2 敗れたり!

ディープラーニングをみくびっていました。

実は、4月23日からコンピュータ将棋の、学習、を開始しました。 ディープラーニングのプラットフォームは先の記事にも書きましたようにchainerです。 chainerは日本製のプラットフォームで、日本好きの僕は数あるプラットフォームの中から一切悩まずにchainerを選びました。 そして色々と悩みながら環境を整備して学習開始。 
ここで気づくべきでした。 CPUで動かすchainerのリスクを。
chainerはNVIDIAのGPUを使う事を前提にしており、NVIDIAのGPUを実装していない場合は、CPUでの計算になります。 実は、ここまでは覚悟していました。 ところが予想を超えた性能差でした。 問題は、学習開始直後から目に見える形で起きました。 1000回のイテレーションに対する計算時間がとても長い、なんと32分かかりました。 必要なイテレーション回数は9万回以上、こりゃ大変だ。 でも、GO! ということで学習開始しましたが、36時間を過ぎた頃、ちょっとトイレへ、と席を離れ、戻って来るとSurface Laptop2の画面が真っ暗になっている。 あれれ?なぜ?と見てみるとシャットダウンしている。 結果ですが、熱暴走してシャットダウンしてしまったようです。
Surface Laptop2、よく頑張った、でも、もう少し我慢して欲しかった。

f:id:ken2017:20200428085431j:plain

さて、どうしよう。

 最初は原因が判らず色々と調べた結果、どうやら負荷が高くなりCPUのブーストが働いてCPUの負荷率が100%(近く)隣、CPUが高熱になりシャットダウンしたみたい。 これは初めての経験ですね。 シャットダウン後にCPUの温度が下がる前に再度学習開始とやったところ、今度は10時間程度で同じようにシャットダウン発生。 これは間違いないな、と思い、CPUがブーストしないように設定し、更にCPUの最高負荷率を80%にして学習開始。
この状態で、1000回のイテレーションの時間とCPU温度を測定。
結果、時間は45分で温度は47度。 これなら熱暴走は起きないが、遅い処理が更に遅くなるので、CPUの最高負荷率を5%づつ上げて時間と温度を測定し、最終的にCPUの最高負荷率を90%に設定して学習を再開しました。(1000回あたりの時間は39分で温度は50度。
4月26日の朝に再開し、今朝まで順調に動き続け、68000回まで処理が進んでいました。

f:id:ken2017:20200428100156p:plain

そこで何を考えたか、Webを動かしてしまい、9時にどこまで進んだかな、と見てみると68000回で処理が止まっている。 レレれ???どういうこと???
また、やってしまった、あれだけ触らないように、と注意していたはずなのに、魔が刺してやってしまった。(我が家のネット環境の問題で、どうも朝一番はネット接続が良くなくて接続に苦労しています。 さわっちゃダメだったんですよね。)
ということで再度やり直しとなりました。

f:id:ken2017:20200428094649j:plain

少しやり方を変えよう。

再開したとして、終わるのは3日先になります。 この間、ぼ~っと待っているのも癪に障るので並行してなにか別のことをやることにします。
そうです、Macbook ProはAMDのGPUを搭載しているのでそれを使えるようにしたいと思います。 Macbook PrのAMDのGPUが使えるディープラーニング用プラットフォームをMacにインストールして動くようにしたいと思います。 その際には、コンピュータ将棋のコードの修正も必要になりますが、まずは、チャレンジ!ですね。
ということで、気を取り直して頑張ります!!

では、また。

(記事後記)
ちなみにCPUで学習した場合、GPUで学習した時間に比べ200倍長い時間が必要なようです。
  本の著者の環境と僕の環境の比較になりますが。
  GPUってすごいですね。

 

 

プライバシーポリシー お問い合わせ