GCPのGPUを比較
こんにちは、chlochanです。いつの日か仕事に生かせる事を目指して、休日とかにDeep Learning の勉強をしています。勉強には Google Cloud Platform(以降GCPと表記) を使っています。教科書は、"PythonとKerasによるディープラーニング"(以降PKDLと表記)を使っています。Deep LearningにはGPUが必要です。GCPで使えるGPUは以下に載っています。
https://cloud.google.com/compute/docs/gpus/
上記によるとGCPで提供しているdeep learning用途向きのGPUは現在4種類あります。それを表にして比較してみました。また参考に、まだα運用中ですがT4も表に載せました。料金はリージョンによって微妙に違うので参考程度にしてください。以下の料金は2018/11/10時点でのロサンゼルスリージョンの料金です。AWSの半額以下の料金です。
比較項目 ↓ Teslaのタイプ名 → | V100 | P100 | P4 | K80 | T4 |
---|---|---|---|---|---|
GCPでの提供開始時期 | 2018年4月 | 2017年9月 | 2018年8月 | 2017年9月 | α運用中 |
アーキテクチャー | Volta | Pascal | Pascal | Kepler | Turing |
プロセス | 12nm | 16nm | 16nm | 28nm | 12nm |
ファン | あり | あり | なし | あり | なし |
GPUメモリの容量(GB) | 16 | 16 | 8 | 12 | 16 |
GPUメモリの種類 | HBM2 | HBM2 | GDDR5 | GDDR5 | GDDR6 |
GPUメモリバンド幅(GB/s) | 900 | 732 | 192 | 240 | 320 |
CPUのMaxコア数/GPU一個あたり | 12 | 16 | 24 | 8 | - |
その時のCPUのMaxメモリ容量(GB) | 78 | 104 | 156 | 52 | - |
利用可能なゾーン数(2018/11時点) | 9 | 11 | 14 | 9 | 18? |
FP32(TF) | 14.02 | 9.318 | 5.443 | 4.368 | 8.1 |
FP16(TF) | - | 18.636 | - | - | 65 |
INT8(TOPS) | - | - | 21.77 | - | 130 |
INT4(TOPS) | - | - | - | - | 260 |
PKDLのリスト5-23の実行時間 | 22分 | 20分 | 28分 | 38分 | - |
CPUコア16メモリ104GB時の価格/h | - | $1.691 | $1.306 | - | - |
CPUコア12メモリ78GB時の価格/h | $2.263 | $1.549 | $1.107 | - | - |
CPUコア8メモリ52GB時の価格/h | $2.073 | $1.359 | $0.908 | $0.652 | - |
CPUコア4メモリ26GB時の価格/h | $1.907 | $1.193 | $0.710 | $0.486 | - |
現時点(2018/11月)では東京リージョンではGPUはどれも使えません。Googleはネットワーク早いので東京に無くても問題ないかもしれませんが、ちょっと寂しいです。他のリージョンから選ぶ必要がありますが、P4は利用可能なゾーンが一番多いので、現時点で一番良いと思います。なおCPUコア数とCPUメモリ容量はデプロイ後でも停止中であれば変更できます。しかしT4のFP16/INT8/INT4はすごいです。これからは、FP16/INT8/INT4をいかにうまく使いこなすか、というのが勝負になりそうです。ちなみに Keras で fp16 で実行する場合は以下を有効にするとよいとの事です。 |
import keras.backend as K
K.set_floatx('float16')
11/15追記、T4がα運用を開始したとのニュースがありました。IAMと管理 → 割当 を確認したところ、T4が18リージョン出現していました。一気にくるようですね。