Colab Proの高性能GPUを使ってdlshogi(DeepLearning系将棋AI)を動かすとNPS値がどれくらい上がり、ELOレーティングがどれくらい上がるのか試してみた。
A100 GPUの性能
使用したA100 GPUの性能は、GoogleのAIのGemini1.5Proの回答によると以下の通り。
- A100 GPU:
- FP32: ~19.5 TFLOPS
- FP16: ~312 TFLOPS
- TF32 (TensorFloat-32): ~156 TFLOPS
- BFLOAT16: ~312 TFLOPS
- FP64: ~9.7 TFLOPS
先日試したT4 GPUに比べるとFP32で2.4倍の性能となる。ちなみに Geforce RTX4070 Laptop GPUの理論性能は20.04TFLOPSとなっているので、MINISFORUM の Atomman G7 ti は、ほぼ同じ性能と思われる。
50回連続対局させた結果
A100 GPU を使用し、下記条件で秒読み1秒で50回連続対局させてみた。
- dlshogi
- モデル:2021年第2回電竜戦エキジビジョンバージョン
- 定跡 :未使用
- Suisho5
- モデル:2021年第2回電竜戦バージョン
- 定跡 :使用(standard_book)
結果は以下の通り。引き分けは0.5勝として勝率を計算。
- dlshogi 31勝15敗4分け(66%)
- 先手21勝1敗3分け(90%)、後手10勝14敗1分け(42%)
- Suisho5 15勝31敗4分け(34%)
- 先手14勝10敗1分け(58%)、後手1勝21敗3分け(10%)
レーティング差は115.2でdlshogiが強いという結果になった。
Elo difference: 115.2 +/- 100.4, LOS: 99.1 %, DrawRatio: 0.1 %
考察
NPS値は初期局面で49628という値を出した。我が1000ドルPCのGPUでの数値1800~2000と比較すると25倍以上の性能アップとなった。しかしELOレーティングはT4 GPUを使用したときのレーティングと変わらなかった。むしろ後手での敗戦が影響してレーティングは下がってしまった。
GPU演算性能に比例して将棋AIの強さは上がるのだが、あるレベルを超えるとサチることを確認した。今回の経験からすると、T4 GPUの性能である8TFLOPSあたりのNVIDIA製GPUとTensorRTの組み合わせが最もコストパフォーマンスの高いdlshogiの使い方のようだ。もちろん強化学習させてさらに強いモデルを作りたいなら高性能なGPUを使ったほうがいいのだが、推論させるだけなら20TFLOPSのGPUを使う必要はなさそう、ということになる。
使用コンピューティングユニット
2週間ほどColab Proを使用した。この間ほとんどT4 GPU を使用し、約30ユニットを消費した。今回はA100 GPUを使用し、使用開始時は69.16ユニットあったが、環境準備に約15分、対局に約2時間半がかかり、ユニット数26.82を消費して現在の残りユニット数は42.34となった。
26.82ユニットは金額に換算すると316円になる。316円でこれだけ実験できて遊べれば満足だ。
本日の結論
単純にGPU性能が2倍になれば将棋AIの強さが2倍になるわけではない、Colab Proを普段使う時はT4 GPUを使ったほうがいい、というのが本日の結論だ。
当然といえば当然の結果だったが、やってみないとわからないこと、肚に落ちないことがある。自分で試してみたいと思うのは知的好奇心であり、試すことは一種の冒険なのだ。Colab Pro環境は、そんな好奇心や冒険心を満たすには良い環境のようだ。