GA将?開発日記~王理のその先へ~

ネタ勢最強を目指して絶賛開発中。

プロセス・スレッド優先度の話

 現在のGA将は8クライアントの合議ですが、スレッドとしては合議サーバが1スレッド・合議クライアントが計8スレッド走っています。

 んで、Core i7 5960X*1マシンでは問題なく思考時間制御が出来ているんですが、Athlon 5350*2マシンだと時々ラグが出る(思考停止する時間になっても停止しない)現象が起きていました。

 上で書いたfloodgateでのtime up連発も、多分その影響です。

 今日はその原因追求と対応をしたのですが、どうも下記2点が重要だったみたいです。

  1. GUI*3の動作を妨げない様に、プロセスの優先度を下げる。
  2. ファイルにログ出力する際は、一時的にスレッドの優先度を上げる。

 1.はまぁ当たり前なんですが、2.の方が結構ハマりました。

 2.の対策をしていないとどうなるかというと、ログ出力の順番待ちで行列が出来たり色々あって、結果として思考時間が設定値をオーバーしてしまうみたいです。

 という訳で、00:00の回から対策したバージョンをfloodgateに投入しました。

 思考時間のマージンも微調整したので、これでtime upする様なら明日再度調整します。

*1:8コア/16スレッド

*2:4コア/4スレッド

*3:将棋所とかプチ将棋とか