GTX970 ⇒ GTX 1070に交換メモ


はじめに

Chainerを使って、ディープラーニングを趣味で試しているのですが、
使っているGPU(GTX970、4GB)のメモリが少ないため、GTX1070(8GB)に交換してみました。

環境

OS:Windows 7 Professional
CPU:Core i5-6600
交換前GPU:GeForce GTX 970 JetStream(Palit Microsystems)
交換後GPU:GeForce GTX 1070 AMP Edition ZT-P10700C-10P(ZOTAC) 約54,000円(7/24現在)

交換前に

  • NVIDIAの名前がついているソフトをすべてアンインストール

交換

  • 補助電源(6pin×2)をはずす
  • ねじをはずす
  • ロックをはずして、スロットからGTX970を引き抜く
  • スロットにGTX1070をさす
  • ねじをとめる
  • 補助電源(8pin×2)を付ける (6pinと6pin線の横にあった2pinを使って、8pinに接続した)

交換後

  • NVIDIAドライバ ダウンロード・インストール
  • CUDA Toolkit 8 RC ダウンロード・インストール
  • cuDNN v5 (May 27, 2016), for CUDA 8.0 RC ダウンロード・コピー
    (Nvidiaに登録、ログインが必要)

  • Chainerを一度アンインストール

pip uninstall chainer
  • Chainerを再インストール(キャッシュが残っているため --no-cache-dir -vvvv が必要)
pip install chainer --no-cache-dir -vvvv

速度結果

Chainerのサンプルのmnistの実行時間を比較
(6万枚トレーニング、1万枚テスト、バッチサイズ100枚、20エポック)

  • GPU計算 交換前 GTX970: 89秒
  • GPU計算 交換後 GTX1070: 84秒
  • CPU計算(交換後): 1050秒

この条件では交換の効果は小さかったのですが、
おそらくフルでGPUを使っていないことが要因のようです。
バッチサイズを10000枚にすると、交換後 GTX1070で8秒でした。