H.G.Muller

Joined: 10 Mar 2006 Posts: 12777 Location: Amsterdam
|
Post subject: (no)GUI timings Posted: Fri Feb 17, 2012 7:34 pm |
|
|
I did some timing measurements on Linux, for the time elapsed between one engine sending its move, and the opponent receiving it ('delay'), and the time stolen by the interface while the engine was searching ('usage'). I tried this for XBoard and cutechess-cli, each with two WB engines or two UCI engines, where XBoard used either Polyglot or UCI2WB to connect to the UCI engines.
Conditions: 40 moves in 10 sec, 1.3GHz Celeron-M, ponder off.
The results were:
| Code: |
delay usage (both in msec)
cutechess-cli + WB 1.0 6
cutechess-cli + UCI 1.25 7
XBoard + WB 0.9 7
XBoard + UCI2WB + UCI 1.25 7
XBoard + Polyglot + UCI 2.0 9
|
My conclusion was that, speed-wise, it seems pointless to let XBoard support UCI natively. Polyglot seems a tiny bit slower than UCI2WB.
The raw timing histograms:
| Code: |
hgm@hgm-laptop:~/cutechess-cli$ xboard -mg 1 -debug -fcp "./UCI2WB ./fruitT" -scp "./UCI2WB ./fruitT" -tc 0:10 -noGUI -xponder
StartChildProcess (dir=".") ./UCI2WB ./fruitT
StartChildProcess (dir=".") ./UCI2WB ./fruitT
StartChildProcess (dir=".") ./UCI2WB ./fruitT
xboard: Match Fruit 2.1 (UCI2WB) vs. Fruit 2.1 (UCI2WB): final score 0-1-0
hgm@hgm-laptop:~/cutechess-cli$ ../fboard/copy/tcount<xboard.debug
delay
1. 91
2. 38
usage (avg = 7)
0. 11
2. 20
4. 29
6. 19
8. 20
10. 15
12. 4
14. 3
16. 4
18. 3
38. 1
60. 1
hgm@hgm-laptop:~/cutechess-cli$ ./cutechess-cli.sh -engine name=fruit -engine name=fruit -each cmd=./fruitT proto=uci tc=40/10 -debug>qt.debug
hgm@hgm-laptop:~/cutechess-cli$ ../fboard/copy/tcount<qt.debug
delay
0. 7
1. 88
2. 31
usage (avg = 7)
0. 8
2. 12
4. 25
6. 29
8. 18
10. 13
12. 6
14. 6
16. 3
18. 2
20. 2
46. 1
hgm@hgm-laptop:~/cutechess-cli$ xboard -mg 1 -debug -fcp ./fruitT -fUCI -scp ./fruitT -sUCI -tc 0:10 -noGUI -xponder
StartChildProcess (dir="") polyglot -noini -ec "./fruitT" -ed "." -uci NalimovCache=4
StartChildProcess (dir="") polyglot -noini -ec "./fruitT" -ed "." -uci NalimovCache=4
xboard: Match Fruit 2.1 vs. Fruit 2.1: final score 1-0-0
hgm@hgm-laptop:~/cutechess-cli$ ../fboard/copy/tcount<xboard.debug
delay
1. 14
2. 113
3. 5
4. 1
5. 1
usage (avg = 9)
0. 4
2. 16
4. 13
6. 29
8. 28
10. 22
12. 8
14. 3
16. 4
18. 2
20. 2
30. 1
34. 1
64. 1
hgm@hgm-laptop:~/cutechess-cli$ xboard -mg 1 -debug -fcp fairymax -scp fairymax -tc 0:10 -noGUI -xponder
StartChildProcess (dir=".") fairymax
StartChildProcess (dir=".") fairymax
xboard: Match Fairy-Max 4.8R vs. Fairy-Max 4.8R: final score 0-0-1
hgm@hgm-laptop:~/cutechess-cli$ ../fboard/copy/tcount<xboard.debug
delay
0. 30
1. 102
2. 16
3. 3
4. 2
5. 1
usage (avg = 7)
0. 14
2. 20
4. 20
6. 23
8. 24
10. 15
12. 7
14. 2
16. 3
18. 4
20. 1
22. 2
26. 2
44. 1
52. 1
hgm@hgm-laptop:~/cutechess-cli$ ./cutechess-cli.sh -engine name=fairymax -engine name=fairymax -each cmd=fairymax proto=xboard tc=40/10 -debug>qt.debug
hgm@hgm-laptop:~/cutechess-cli$ ../fboard/copy/tcount<qt.debug
delay
0. 14
1. 43
2. 16
3. 4
5. 2
6. 1
7. 1
8. 1
17. 1
22. 1
usage (avg = 6)
0. 4
2. 18
4. 11
6. 11
8. 7
10. 7
12. 5
14. 3
16. 3
18. 2
20. 1
24. 1
hgm@hgm-laptop:~/cutechess-cli$
|
|
|