前回の続きです。
プレイアウト回数をパラメータに色々振ってレーティングを計測しておりました。400から上3200くらいまでをGPU担当,50をCPU担当と分けて同時に二つfloodgateに投げ込んでました。
Re: FloodgateのAobaZero命名則について | コンピュータ将棋や囲碁の掲示板 | 3515
Policyでの読み抜け | コンピュータ将棋や囲碁の掲示板 | 3518
ざっくり引用しますが,上記リンクに以下のようなコメントがありました。
「マルチスレッドの実装は開発版で実装している。CPU版だとスレッド数を増やせばほぼ比例して速度が上がるようになってます。」
ってことで,p50で流しているCPU版も4スレッドにすればp200くらいにはできそうです。
8スレッドだとp400ですね。16スレッドだとp800ですか。
レート表の空白を埋められそうですね。
ということで,この土日に開発版をビルドしてテストしておりました。
実際の計測だと高クロックの6コアと省電力の8コアでp400がぎりぎりfloodgateでtimeoutしないくらいじゃないかなって感じです。
また,行列計算部分の負荷が大きいためかハイパースレッディングはほぼ効きません。具体的には4コア8スレッドのCPUに4スレッドで流しても8スレッドで流してもnpsは似たようなものでした。2コア4スレッドだと気持ち4スレッドの方がnpsが大きかったかもしれませんが微差です。
高負荷でクロックが下がるモバイル機ではスレッド数が少ない方が良いことは言うまでもありません。ノートパソコンの人はコア数推奨です。
と言う感じでマルチスレッドCPUでのAobaZeroは投入したばかりです。
GPU版にどこまで迫れるでしょうか。
そのうち公式にリリースされると思いますがバイナリ必要なら御連絡下さい。
---
追記
AlphaZeroもそうであったように勝勢になってから緩手が多いようで,持将棋模様が増えている様子。
それで気づいたんですが,現状の対戦エンジンには宣言勝ちルーチン無いですね。
割と入玉しようとするので学習ルーチンでは評価してるんでしょうか。
宣言勝ち未実装だっけ?>elmo_WCSC27_479_1000k vs. AobaZero_w668_n_p800 (2019-08-05 23:30) https://t.co/Zvq2RuZdAo
— 48 (@bleu48) August 5, 2019
---
更に追記
aobaz単体では未実装で、学習時はautousiが判定しています。
— 山下宏 (@yss_aya) August 7, 2019
ってことだそうで,対戦エンジンには宣言勝ちルーチンは無いそうです。当然探索中にも勝ち扱いしていないので入玉指向は単に学習時に得たポリシーネットの指し筋ですね。
探索時の宣言ルーチンは実装の検討頂けるようです。私は勝率上がると思ってます。
ところで,CPUのp200思ってたよりちょっと弱い気がするので疑ってみます。