先週に続き、gnubgと戯れます。
マッチの解析をする際に、出来るだけ早く処理を終えたいです。デフォルトで実行すると1分くらいかかります。
In <5> > gnubg.command('import mat 87027157.txt')
GNU Backgammon Position ID: AAAAunEAAAAAAA
Match ID : 8AqgAFAAAAAE
+13-14-15-16-17-18------19-20-21-22-23-24-+ O: mkisono
| | | | OOO 5 ポイント
| | | | OOO
| | | | OOO
| | | | OOO
| | | | OOO
v| |BAR| | 5 ポイントマッチ (キューブ: 1)
| | | | X
| | | | X
| | | X X | X
| | | X X X | X
| | | X X X X | XX 0 ポイント
+12-11-10--9--8--7-------6--5--4--3--2--1-+ X: cwm7296g
In <10> > %time gnubg.command('analyse match')
CPU times: user 1min 6s, sys: 112 ms, total: 1min 7s
Wall time: 1min 7s
私のPCは究極のゲームマシンなので、コアは8つあります。マルチスレッドで処理させなければ勿体ない。
In <11> > gnubg.command('analyse clear match')
In <12> > gnubg.command('set threads 8')
The number of threads has been set to 8.
In <13> > %time gnubg.command('analyse match')
CPU times: user 2min 18s, sys: 176 ms, total: 2min 18s
Wall time: 18.4 s
マッハで解析が終わるようになりました!
ちなみに、GUIでもスレッド数を設定できます。もしも設定していない人がいたら、この値を増やした方がいいと思いますよ。
gnubgには他にもいろんなオプションがあるので研究したいと思います。