個人用ノートPCを新しく買ったので
こんにちは!CTO相澤です。
突然ですが、みなさん、パソコンは何をお使いでしょうか?
デスクトップ?ノート?
Mac?windows?
エンジニアの方はやっぱりMacBookが多いですかね。相澤も普段はMacBookAirを使っていますが、先日もう一台あるwindowsのノートPCを新調しました。
せっかくなので、スペックは低いですがNVIDIAのグラフィックボード(GPU)がついているThinkPadを購入しましたよ。
目的はもちろんゲームではなく、ディープラーニングです。
Ubuntuを載せて環境構築
windowsのままだと環境を整えるの面倒なので、ubuntuとのデュアルブートにしてしまいます。「買ったばかりだから」とかは関係ありません。
「ubuntu デュアルブート」と検索するとトライしてる人も多いですね。
その後はGPUを使うための準備です。
NVIDIAから提供されているGPU向けのプラットフォームCUDAとディープラーニング用のライブラリcuDNNをインストール。
CUDAは最近9.0が発表されてますが、弊社では8系を使っているのでそれに伴って8系をインストールしました。
(apt-getなどでインストールする場合、バージョンを指定しないと9.0がインストールされてしまいます)
比べてみる
さっそく、MacBookAir、ThinkPad(GPU有り)、そして弊社でもよく使うAWSのGPUインスタンス(p2.xlarge)で、同じコードを実行し、実行速度を比べてみました。
使ったコードはtensorflowをつかった手書き数字(MNIST)の認識のトレーニングです。(隠れ層は3層、エポック数は100)
・MacBookAir:92秒
・ThinkPad(GeForce940MX):25秒
・AWS(Tesla K80):20秒
という結果になりました。
ThinkPadはMacBookAirのおよそ4分の1の時間で実行できました。
AWSのコスト(p2.xlargeは1時間あたり約$1)を考えると十分ではないでしょうか。
さて、これを使って何を学習させようかな、、、。
手元にGPUがあるだけでワクワクしますね!みなさんの参考になれば幸いです。