Geschrieben von:/Posted by: Robert Allgeuer at 02 April 2004 23:55:44:
Als Antwort auf:/In reply to: Re: Gothmog - the best tactician? geschrieben von:/posted by: Tord Romstad at 02 April 2004 19:10:11:
One question: Does the problem persist even if you disable tablebases?
Tord
I have just tried it, yes also with disabled EGTBs I encounter this problem on my configuration. (Win2k, Athlon TB 1,1Ghz, Winboard 4.2.7). I ran 3 tests now, one with Ruffian (an engine that sends feature done=0, and two with Gothmog 0.4.7, with EGTBs enabled and finally disabled. All 3 debug files below.
The way I would interpret this:
the second engine receives the xboard and protover 2. If the second engine is Ruffian, it immediately sends back feature done=0 to Winboard and then initialises, sends its features and only after having sent done=1 it receives the new etc. All is synchronised and in sequence.
When Gothmog as second engine however receives xboard and protover 2 it does not react at all, Winboard waits and after a timeout of 10000 it just continues to send the new etc.. 4000 (without EGTBs) or 12000 (with EGTBs) after that Gothmog however starts sending its features, too late. Maybe my machine is slow, on other machines Gothmog may send its features already after 9000 (instead of 14000 and 22000 respectively) and the problem does not hit, because it is still within the timeout. So the problem may only occur on certain machines, but on those machines it is reproducable. Disabling the tablebases changes the timing but not enough, Gothmog is still 4000 too slow. But anyway the clean solution is to synchronise by sending the feature done=0 and done=1.
Robert
Ruffian:
recognized 'normal' (-1) as variant normal
WinBoard 4.2.7 + Ruffian
Reset(1, 0) from gameMode 0
recognized 'normal' (-1) as variant normal
GameEnds(0, (null), 2)
StartChildProcess (dir="f:\chess\ruffian") Ruffian
621 >first : xboard
protover 2
651 <first : Ruffian 1.0.1
651 <first : feature done=0
651 >first : accepted done
651 <first : Loading configuration: ruffian.cfg
651 <first : Warning: RESIGN changed, default=700, newvalue=900
651 <first : Warning: HASH changed, default=33554432, newvalue=67108864
651 <first : Warning: EGTB_HASH_SIZE changed, default=1048576, newvalue=6291456
651 <first : Logfile: Fri Apr 02 23:18:09 2004
651 <first : Total hash size 64M
651 <first : Open book: ruffian.bok
651 <first : Book version 0.3 created Sun Sep 29 02:01:08 2002
651 <first : 59116 book moves, depth=60
651 <first : ruffian: [xboard]
7180 <first : feature setboard=1
7180 >first : accepted setboard
7180 <first : feature analyze=1
7180 >first : accepted analyze
7180 <first : feature setboard=1
7180 >first : accepted setboard
7180 <first : feature myname="Ruffian 1.0.1"
7180 >first : accepted myname
7180 <first : feature done=1
7180 >first : accepted done
7180 <first : feature ping=1
7180 >first : accepted ping
7190 >first : new
random
7190 >first : level 0 5 2
7190 >first : post
7190 >first : hard
7190 >first : easy
7190 >first : ping 1
7190 <first : pong 1
14931 >first : force
StartChildProcess (dir="f:\chess\ruffian") Ruffian
15442 >second: xboard
protover 2
15452 <second: Ruffian 1.0.1
15452 <second: feature done=0
15452 >second: accepted done
15452 <second: Loading configuration: ruffian.cfg
15452 <second: Warning: RESIGN changed, default=700, newvalue=900
15452 <second: Warning: HASH changed, default=33554432, newvalue=67108864
15452 <second: Warning: EGTB_HASH_SIZE changed, default=1048576, newvalue=6291456
15452 <second: Logfile: Fri Apr 02 23:18:24 2004
15452 <second: Total hash size 64M
15452 <second: Open book: ruffian.bok
15452 <second: Book version 0.3 created Sun Sep 29 02:01:08 2002
15452 <second: 59116 book moves, depth=60
15452 <second: ruffian: [xboard]
21401 <second: feature setboard=1
21401 >second: accepted setboard
21401 <second: feature analyze=1
21401 >second: accepted analyze
21401 <second: feature setboard=1
21401 >second: accepted setboard
21401 <second: feature myname="Ruffian 1.0.1"
21401 >second: accepted myname
21401 <second: feature done=1
21401 >second: accepted done
21401 <second: feature ping=1
21401 >second: accepted ping
21411 >second: new
random
21411 >second: level 0 5 2
21411 >second: post
21411 >second: hard
21411 >second: easy
21411 >second: ping 1
21411 >second: force
21411 >first : computer
21411 >second: computer
21411 >first : black
21411 >first : time 30000
otim 30000
21411 >first : white
21411 >first : go
21411 <second: pong 1
21561 <first : move d2d4
21561 >second: time 30000
otim 30185
21561 >second: d2d4
21561 >second: black
21561 >second: go
21631 <second: move g8f6
Interrupting first
21641 >first : time 30185
otim 30193
21641 >first : g8f6
21731 <first : move c2c4
Interrupting second
21741 >second: time 30193
otim 30375
21741 >second: c2c4
21811 <second: move e7e6
Interrupting first
21821 >first : time 30375
otim 30385
21821 >first : e7e6
21891 <first : move g1f3
Interrupting second
21891 >second: time 30385
otim 30567
21891 >second: g1f3
21992 <second: move f8b4
Interrupting first
22002 >first : time 30567
otim 30574
22002 >first : f8b4
22092 <first : move c1d2
Interrupting second
22102 >second: time 30574
otim 30756
22102 >second: c1d2
22182 <second: move d8e7
Interrupting first
22182 >first : time 30756
otim 30766
22182 >first : d8e7
22252 <first : move g2g3
Interrupting second
22262 >second: time 30766
otim 30949
22262 >second: g2g3
22332 <second: move b7b6
Interrupting first
22342 >first : time 30949
otim 30958
22342 >first : b7b6
22412 <first : move f1g2
Interrupting second
22412 >second: time 30958
otim 31141
22412 >second: f1g2
22492 <second: move c8b7
Interrupting first
22502 >first : time 31141
otim 31149
22502 >first : c8b7
22572 <first : move e1g1
Interrupting second
22582 >second: time 31149
otim 31333
22582 >second: e1g1
22653 <second: move b4d2
Interrupting first
22663 >first : time 31333
otim 31341
22663 >first : b4d2
22753 <first : move d1d2
Interrupting second
22753 >second: time 31341
otim 31524
22753 >second: d1d2
22833 <second: move e8g8
Interrupting first
22833 >first : time 31524
otim 31533
22833 >first : e8g8
22913 <first : move b1c3
Interrupting second
22923 >second: time 31533
otim 31716
22923 >second: b1c3
23013 <second: move d7d5
Interrupting first
23023 >first : time 31716
otim 31723
23023 >first : d7d5
23093 <first : move c4d5
Interrupting second
23103 >second: time 31723
otim 31908
23103 >second: c4d5
23173 <second: move e6d5
Interrupting first
23173 >first : time 31908
otim 31915
23173 >first : e6d5
25857 <first : 9 19 268 1547534 Nh4 Qe6 Qg5 Nbd7 Nf5 g6 Nh6+ Kh8 Rac1 c5 e3
Reset(1, 1) from gameMode 5
recognized 'normal' (-1) as variant normal
GameEnds(0, (null), 2)
26608 >first : force
26608 >first : ping 2
26608 >second: force
26608 >second: ping 2
26618 >first : new
random
26618 >first : level 0 5 2
26618 >first : post
26618 >first : hard
26618 >first : easy
26618 >first : ping 3
26638 <second: pong 2
26728 <first : move f3h4
Ignoring extra move from first
26728 <first : pong 2
26728 <first : pong 3
GameEnds(0, (null), 2)
29943 >first : force
29943 >first : ping 4
29943 >first : quit
29943 >second: quit
gothmog with EGTBs:
recognized 'normal' (-1) as variant normal
WinBoard 4.2.7 + Ruffian
Reset(1, 0) from gameMode 0
recognized 'normal' (-1) as variant normal
GameEnds(0, (null), 2)
StartChildProcess (dir="f:\chess\ruffian") Ruffian
601 >first : xboard
protover 2
631 <first : Ruffian 1.0.1
631 <first : feature done=0
631 >first : accepted done
631 <first : Loading configuration: ruffian.cfg
631 <first : Warning: RESIGN changed, default=700, newvalue=900
631 <first : Warning: HASH changed, default=33554432, newvalue=67108864
631 <first : Warning: EGTB_HASH_SIZE changed, default=1048576, newvalue=6291456
631 <first : Logfile: Fri Apr 02 23:19:26 2004
631 <first : Total hash size 64M
631 <first : Open book: ruffian.bok
631 <first : Book version 0.3 created Sun Sep 29 02:01:08 2002
631 <first : 59116 book moves, depth=60
631 <first : ruffian: [xboard]
6579 <first : feature setboard=1
6579 >first : accepted setboard
6579 <first : feature analyze=1
6579 >first : accepted analyze
6579 <first : feature setboard=1
6579 >first : accepted setboard
6579 <first : feature myname="Ruffian 1.0.1"
6579 >first : accepted myname
6579 <first : feature done=1
6579 >first : accepted done
6579 <first : feature ping=1
6579 >first : accepted ping
6589 >first : new
random
6589 >first : level 0 5 2
6589 >first : post
6589 >first : hard
6589 >first : easy
6589 >first : ping 1
6589 <first : pong 1
11586 >first : force
StartChildProcess (dir="f:\chess\gothmog_0.4.7sel6") Gothmo&am