Closed jimbo321 closed 9 years ago
Sorry that breaks tournament time. This works better >
// set _stopTime to something smarter in MyGo() if you wish _stopTime = (movetime ? (_startTime + movetime) : 0); const uint64_t timeRemaining = (WhiteToMove() ? wtime : btime);
uint64_t endTime = 0;
if (movetime) { endTime = (_startTime + movetime/1000);
}else
if (timeRemaining) {
const int moves = (movestogo ? movestogo : MovesToGo());
const uint64_t timePerMove = (timeRemaining / moves);
endTime = (_startTime + timePerMove);
}
if (!_stopTime || (endTime < _stopTime)) {
_stopTime = endTime;
}
if (UseTimer() && !timerThread.Active()) { if (!timerThread.Start(Timer, this)) { Output() << "Failed to start timer thread!"; } }
Hi Jim,
Thanks for the feedback. But I'm not seeing in what way it's broken, could you describe the problem?
The code you've provided wouldn't work properly because "endTime = (_startTime + movetime/1000)" needs to be "endTime = (_startTime + movetime)". It's not necessary to divide movetime by 1000 because endTime needs to be a millisecond timestamp just like _startTime.
Regards, Shawn
On Tue, Mar 10, 2015 at 6:04 AM, jimbo321 notifications@github.com wrote:
Sorry that breaks tournament time. This works better >
// set _stopTime to something smarter in MyGo() if you wish _stopTime = (movetime ? (_startTime + movetime) : 0); const uint64_t timeRemaining = (WhiteToMove() ? wtime : btime);
uint64_t endTime = 0;
if (movetime) { endTime = (_startTime + movetime/1000);
}else
if (timeRemaining) { const int moves = (movestogo ? movestogo : MovesToGo()); const uint64_t timePerMove = (timeRemaining / moves); endTime = (_startTime + timePerMove);
}
if (!_stopTime || (endTime < _stopTime)) { _stopTime = endTime; }
if (UseTimer() && !timerThread.Active()) { if (!timerThread.Start(Timer, this)) { Output() << "Failed to start timer thread!"; }
}
— Reply to this email directly or view it on GitHub https://github.com/zd3nik/SenjoUCIAdapter/issues/1#issuecomment-78040726 .
Hi Shawn,
I was compiling Clubfoot for Arm/Android and testing with 'Chess For Android' gui. Compiled Arm5 binary is here. http://tinyurl.com/o22ul8v Without my fix Clubfoot would search indefinately without making a move (fixed time per move setting). It works perfectly after the fix. If you dont have an android device to test, but have a windows machine you could install 'bluestacks' android app player for running 'chess for android' gui' + clubfoot arm5 binary.
Jim.
Jim Ablett jim.ablett@operamail.com
On Tue, Mar 10, 2015, at 07:24 PM, Shawn Chidester wrote:
Hi Jim,
Thanks for the feedback. But I'm not seeing in what way it's broken, could
you describe the problem?
The code you've provided wouldn't work properly because "endTime =
(_startTime + movetime/1000)" needs to be "endTime = (_startTime +
movetime)". It's not necessary to divide movetime by 1000 because endTime
needs to be a millisecond timestamp just like _startTime.
Regards,
Shawn
On Tue, Mar 10, 2015 at 6:04 AM, jimbo321 notifications@github.com wrote:
Sorry that breaks tournament time. This works better >
// set _stopTime to something smarter in MyGo() if you wish
_stopTime = (movetime ? (_startTime + movetime) : 0);
const uint64_t timeRemaining = (WhiteToMove() ? wtime : btime);
uint64_t endTime = 0;
if (movetime) {
endTime = (_startTime + movetime/1000);
}else
if (timeRemaining) {
const int moves = (movestogo ? movestogo : MovesToGo());
const uint64_t timePerMove = (timeRemaining / moves);
endTime = (_startTime + timePerMove);
}
if (!_stopTime || (endTime < _stopTime)) {
_stopTime = endTime;
}
if (UseTimer() && !timerThread.Active()) {
if (!timerThread.Start(Timer, this)) {
Output() << "Failed to start timer thread!";
}
}
—
Reply to this email directly or view it on GitHub
https://github.com/zd3nik/SenjoUCIAdapter/issues/1#issuecomment-78040726
.
— Reply to this email directly or view it on GitHub[1].
Links:
http://www.fastmail.com - Accessible with your email software or over the web
Interesting.
When I run clubfoot under Chess Arena 3.5 the time controls are working properly. The time controls also work when I test it manually. But when I apply your changes clubfoot moves almost instantly every move because your change divides movetime by 1000. I wonder if Chess for Android is giving movetime in milliseconds instead of seconds as the UCI spec requires.
Is there an option to get a log of the commands sent to the engines in Chess for Android? I'd like to see the parameters it's passing with the "go" command. If you can't get a log of the commands, can you try running your build of cluboot manually and get the output from the following commands?
go movetime 3 go wtime 30000 go movetime 3 wtime 30000 go movetime 3 wtime 600000
I've attached a text file with the output of these commands when I run them with my 64-bit windows build of clubfoot.
Also, I might as well check: what revision of clubfoot did you clone?
Thanks, Shawn
On Wed, Mar 11, 2015 at 5:35 AM, jimbo321 notifications@github.com wrote:
Hi Shawn,
I was compiling Clubfoot for Arm/Android and testing with 'Chess For Android' gui. Compiled Arm5 binary is here. http://tinyurl.com/o22ul8v Without my fix Clubfoot would search indefinately without making a move (fixed time per move setting). It works perfectly after the fix. If you dont have an android device to test, but have a windows machine you could install 'bluestacks' android app player for running 'chess for android' gui' + clubfoot arm5 binary.
Jim.
Jim Ablett jim.ablett@operamail.com
On Tue, Mar 10, 2015, at 07:24 PM, Shawn Chidester wrote:
Hi Jim,
Thanks for the feedback. But I'm not seeing in what way it's broken, could
you describe the problem?
The code you've provided wouldn't work properly because "endTime =
(_startTime + movetime/1000)" needs to be "endTime = (_startTime +
movetime)". It's not necessary to divide movetime by 1000 because endTime
needs to be a millisecond timestamp just like _startTime.
Regards,
Shawn
On Tue, Mar 10, 2015 at 6:04 AM, jimbo321 notifications@github.com wrote:
Sorry that breaks tournament time. This works better >
// set _stopTime to something smarter in MyGo() if you wish
_stopTime = (movetime ? (_startTime + movetime) : 0);
const uint64_t timeRemaining = (WhiteToMove() ? wtime : btime);
uint64_t endTime = 0;
if (movetime) {
endTime = (_startTime + movetime/1000);
}else
if (timeRemaining) {
const int moves = (movestogo ? movestogo : MovesToGo());
const uint64_t timePerMove = (timeRemaining / moves);
endTime = (_startTime + timePerMove);
}
if (!_stopTime || (endTime < _stopTime)) {
_stopTime = endTime;
}
if (UseTimer() && !timerThread.Active()) {
if (!timerThread.Start(Timer, this)) {
Output() << "Failed to start timer thread!";
}
}
—
Reply to this email directly or view it on GitHub
< https://github.com/zd3nik/SenjoUCIAdapter/issues/1#issuecomment-78040726>
.
— Reply to this email directly or view it on GitHub[1].
Links:
1. https://github.com/zd3nik/SenjoUCIAdapter/issues/1#issuecomment-78188712
http://www.fastmail.com - Accessible with your email software or over the web
— Reply to this email directly or view it on GitHub https://github.com/zd3nik/SenjoUCIAdapter/issues/1#issuecomment-78247180 .
new go movetime 3 info depth 1 seldepth 1 nodes 1 time 0 nps 0 score cp 16 pv d2d4 info depth 2 seldepth 2 nodes 41 time 0 nps 0 score cp 8 pv d2d4 d7d5 info depth 3 seldepth 4 nodes 153 time 15 nps 10200 score cp 0 pv d2d4 d7d5 b1c3 info depth 3 seldepth 8 nodes 343 time 15 nps 22866 score cp 16 pv e2e4 d7d5 f1b5 c8d7 info depth 4 seldepth 11 nodes 1077 time 31 nps 34741 score cp 8 pv e2e4 d7d5 b1c3 e7e6 info depth 5 seldepth 12 nodes 2646 time 47 nps 56297 score cp 8 pv e2e4 d7d5 b1c3 d5e4 c3e4 info depth 6 seldepth 13 nodes 6711 time 78 nps 86038 score cp 0 pv e2e4 d7d5 b1c3 d5e4 c3e4 e7e6 info depth 6 seldepth 14 nodes 10225 time 94 nps 108776 score cp 8 pv d2d4 d7d5 b1c3 b8c6 g1f3 e7e6 info depth 7 seldepth 15 nodes 17047 time 140 nps 121764 score cp 0 pv d2d4 d7d5 b1c3 b8c6 g1f3 g8f6 e2e3 info depth 8 seldepth 19 nodes 57189 time 265 nps 215807 score cp 8 pv d2d4 d7d5 b1c3 e7e6 e2e4 d5e4 c3e4 d8d5 info depth 9 seldepth 20 nodes 128087 time 469 nps 273106 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 g8f6 d1d3 info depth 10 seldepth 21 nodes 444430 time 1359 nps 327027 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 c7c5 f1b5 c5d4 d1d4 info depth 10 seldepth 21 nodes 533884 time 1609 nps 331811 currmovenumber 2 currmove e2e4 score cp 1 lowerbound info depth 10 seldepth 23 nodes 659296 time 1937 nps 340369 score cp 8 pv e2e4 e7e6 d2d4 d7d5 e4e5 b8d7 b1c3 c7c5 g1f3 c5d4 d1d4 info depth 11 seldepth 23 nodes 1035835 time 2906 nps 356447 score cp 8 pv e2e4 e7e6 d2d4 d7d5 e4e5 b8d7 b1c3 c7c5 g1f3 c5d4 d1d4 bestmove e2e4 new go wtime 30000 info depth 1 seldepth 1 nodes 1 time 0 nps 0 score cp 16 pv d2d4 info depth 2 seldepth 2 nodes 41 time 16 nps 2562 score cp 8 pv d2d4 d7d5 info depth 3 seldepth 4 nodes 153 time 16 nps 9562 score cp 0 pv d2d4 d7d5 b1c3 info depth 3 seldepth 8 nodes 343 time 31 nps 11064 score cp 16 pv e2e4 d7d5 f1b5 c8d7 info depth 4 seldepth 11 nodes 1077 time 47 nps 22914 score cp 8 pv e2e4 d7d5 b1c3 e7e6 info depth 5 seldepth 12 nodes 2646 time 63 nps 42000 score cp 8 pv e2e4 d7d5 b1c3 d5e4 c3e4 info depth 6 seldepth 13 nodes 6711 time 78 nps 86038 score cp 0 pv e2e4 d7d5 b1c3 d5e4 c3e4 e7e6 info depth 6 seldepth 14 nodes 10225 time 110 nps 92954 score cp 8 pv d2d4 d7d5 b1c3 b8c6 g1f3 e7e6 info depth 7 seldepth 15 nodes 17047 time 141 nps 120900 score cp 0 pv d2d4 d7d5 b1c3 b8c6 g1f3 g8f6 e2e3 info depth 8 seldepth 19 nodes 57189 time 266 nps 214996 score cp 8 pv d2d4 d7d5 b1c3 e7e6 e2e4 d5e4 c3e4 d8d5 info depth 9 seldepth 20 nodes 128087 time 469 nps 273106 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 g8f6 d1d3 info depth 10 seldepth 21 nodes 444430 time 1360 nps 326786 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 c7c5 f1b5 c5d4 d1d4 bestmove d2d4 new go movetime 3 wtime 30000 info depth 1 seldepth 1 nodes 1 time 0 nps 0 score cp 16 pv d2d4 info depth 2 seldepth 2 nodes 41 time 0 nps 0 score cp 8 pv d2d4 d7d5 info depth 3 seldepth 4 nodes 153 time 0 nps 0 score cp 0 pv d2d4 d7d5 b1c3 info depth 3 seldepth 8 nodes 343 time 15 nps 22866 score cp 16 pv e2e4 d7d5 f1b5 c8d7 info depth 4 seldepth 11 nodes 1077 time 31 nps 34741 score cp 8 pv e2e4 d7d5 b1c3 e7e6 info depth 5 seldepth 12 nodes 2646 time 47 nps 56297 score cp 8 pv e2e4 d7d5 b1c3 d5e4 c3e4 info depth 6 seldepth 13 nodes 6711 time 62 nps 108241 score cp 0 pv e2e4 d7d5 b1c3 d5e4 c3e4 e7e6 info depth 6 seldepth 14 nodes 10225 time 94 nps 108776 score cp 8 pv d2d4 d7d5 b1c3 b8c6 g1f3 e7e6 info depth 7 seldepth 15 nodes 17047 time 125 nps 136376 score cp 0 pv d2d4 d7d5 b1c3 b8c6 g1f3 g8f6 e2e3 info depth 8 seldepth 19 nodes 57189 time 250 nps 228756 score cp 8 pv d2d4 d7d5 b1c3 e7e6 e2e4 d5e4 c3e4 d8d5 info depth 9 seldepth 20 nodes 128087 time 453 nps 282752 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 g8f6 d1d3 info depth 10 seldepth 21 nodes 444430 time 1344 nps 330677 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 c7c5 f1b5 c5d4 d1d4 bestmove d2d4 new go movetime 3 wtime 600000 info depth 1 seldepth 1 nodes 1 time 0 nps 0 score cp 16 pv d2d4 info depth 2 seldepth 2 nodes 41 time 0 nps 0 score cp 8 pv d2d4 d7d5 info depth 3 seldepth 4 nodes 153 time 15 nps 10200 score cp 0 pv d2d4 d7d5 b1c3 info depth 3 seldepth 8 nodes 343 time 31 nps 11064 score cp 16 pv e2e4 d7d5 f1b5 c8d7 info depth 4 seldepth 11 nodes 1077 time 31 nps 34741 score cp 8 pv e2e4 d7d5 b1c3 e7e6 info depth 5 seldepth 12 nodes 2646 time 62 nps 42677 score cp 8 pv e2e4 d7d5 b1c3 d5e4 c3e4 info depth 6 seldepth 13 nodes 6711 time 78 nps 86038 score cp 0 pv e2e4 d7d5 b1c3 d5e4 c3e4 e7e6 info depth 6 seldepth 14 nodes 10225 time 109 nps 93807 score cp 8 pv d2d4 d7d5 b1c3 b8c6 g1f3 e7e6 info depth 7 seldepth 15 nodes 17047 time 140 nps 121764 score cp 0 pv d2d4 d7d5 b1c3 b8c6 g1f3 g8f6 e2e3 info depth 8 seldepth 19 nodes 57189 time 281 nps 203519 score cp 8 pv d2d4 d7d5 b1c3 e7e6 e2e4 d5e4 c3e4 d8d5 info depth 9 seldepth 20 nodes 128087 time 484 nps 264642 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 g8f6 d1d3 info depth 10 seldepth 21 nodes 444430 time 1375 nps 323221 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 c7c5 f1b5 c5d4 d1d4 info depth 10 seldepth 21 nodes 533884 time 1625 nps 328544 currmovenumber 2 currmove e2e4 score cp 1 lowerbound info depth 10 seldepth 23 nodes 659296 time 1937 nps 340369 score cp 8 pv e2e4 e7e6 d2d4 d7d5 e4e5 b8d7 b1c3 c7c5 g1f3 c5d4 d1d4 info depth 11 seldepth 23 nodes 1030000 time 2906 nps 354439 score cp 8 pv e2e4 e7e6 d2d4 d7d5 e4e5 b8d7 b1c3 c7c5 g1f3 c5d4 d1d4 bestmove e2e4
Hi Shawn,
I think this is a 64bit > 32bit portability issue. I compiles a 32 bit windows binary with Mingw to test in Arena gui.
With original > _stopTime = (movetime ? (_startTime + movetime) : 0);
Engine searches without stop.
With modified line > _stopTime = (movetime ? (_startTime + (movetime/1000)) : 0);
Engine plays corrrectly.
JIm.
Jim Ablett jim.ablett@operamail.com
On Wed, Mar 11, 2015, at 07:31 PM, Shawn Chidester wrote:
Interesting.
When I run clubfoot under Chess Arena 3.5 the time controls are working
properly. The time controls also work when I test it manually. But when I
apply your changes clubfoot moves almost instantly every move because your
change divides movetime by 1000. I wonder if Chess for Android is giving
movetime in milliseconds instead of seconds as the UCI spec requires.
Is there an option to get a log of the commands sent to the engines in
Chess for Android? I'd like to see the parameters it's passing with the
"go" command. If you can't get a log of the commands, can you try running
your build of cluboot manually and get the output from the following
commands?
go movetime 3
go wtime 30000
go movetime 3 wtime 30000
go movetime 3 wtime 600000
I've attached a text file with the output of these commands when I run them
with my 64-bit windows build of clubfoot.
Also, I might as well check: what revision of clubfoot did you clone?
Thanks,
Shawn
On Wed, Mar 11, 2015 at 5:35 AM, jimbo321 notifications@github.com wrote:
Hi Shawn,
I was compiling Clubfoot for Arm/Android and testing with 'Chess For
Android' gui. Compiled Arm5 binary is here. http://tinyurl.com/o22ul8v
Without my fix Clubfoot would search indefinately without making a move
(fixed time per move setting). It works perfectly after the fix. If you
dont have an android device to test, but have a windows machine you
could install 'bluestacks' android app player for running 'chess for
android' gui' + clubfoot arm5 binary.
Jim.
Jim Ablett jim.ablett@operamail.com
On Tue, Mar 10, 2015, at 07:24 PM, Shawn Chidester wrote:
Hi Jim,
Thanks for the feedback. But I'm not seeing in what way it's
broken, could
you describe the problem?
The code you've provided wouldn't work properly because "endTime =
(_startTime + movetime/1000)" needs to be "endTime = (_startTime +
movetime)". It's not necessary to divide movetime by 1000 because
endTime
needs to be a millisecond timestamp just like _startTime.
Regards,
Shawn
On Tue, Mar 10, 2015 at 6:04 AM, jimbo321
notifications@github.com wrote:
Sorry that breaks tournament time. This works better >
// set _stopTime to something smarter in MyGo() if you wish
_stopTime = (movetime ? (_startTime + movetime) : 0);
const uint64_t timeRemaining = (WhiteToMove() ? wtime : btime);
uint64_t endTime = 0;
if (movetime) {
endTime = (_startTime + movetime/1000);
}else
if (timeRemaining) {
const int moves = (movestogo ? movestogo : MovesToGo());
const uint64_t timePerMove = (timeRemaining / moves);
endTime = (_startTime + timePerMove);
}
if (!_stopTime || (endTime < _stopTime)) {
_stopTime = endTime;
}
if (UseTimer() && !timerThread.Active()) {
if (!timerThread.Start(Timer, this)) {
Output() << "Failed to start timer thread!";
}
}
—
Reply to this email directly or view it on GitHub
<
https://github.com/zd3nik/SenjoUCIAdapter/issues/1#issuecomment-78040726>
.
— Reply to this email directly or view it on GitHub[1].
Links:
1.
https://github.com/zd3nik/SenjoUCIAdapter/issues/1#issuecomment-78188712
http://www.fastmail.com - Accessible with your email software
or over the web
—
Reply to this email directly or view it on GitHub
https://github.com/zd3nik/SenjoUCIAdapter/issues/1#issuecomment-78247180
.
new
go movetime 3
info depth 1 seldepth 1 nodes 1 time 0 nps 0 score cp 16 pv d2d4
info depth 2 seldepth 2 nodes 41 time 0 nps 0 score cp 8 pv d2d4 d7d5
info depth 3 seldepth 4 nodes 153 time 15 nps 10200 score cp 0 pv d2d4 d7d5 b1c3
info depth 3 seldepth 8 nodes 343 time 15 nps 22866 score cp 16 pv e2e4 d7d5 f1b5 c8d7
info depth 4 seldepth 11 nodes 1077 time 31 nps 34741 score cp 8 pv e2e4 d7d5 b1c3 e7e6
info depth 5 seldepth 12 nodes 2646 time 47 nps 56297 score cp 8 pv e2e4 d7d5 b1c3 d5e4 c3e4
info depth 6 seldepth 13 nodes 6711 time 78 nps 86038 score cp 0 pv e2e4 d7d5 b1c3 d5e4 c3e4 e7e6
info depth 6 seldepth 14 nodes 10225 time 94 nps 108776 score cp 8 pv d2d4 d7d5 b1c3 b8c6 g1f3 e7e6
info depth 7 seldepth 15 nodes 17047 time 140 nps 121764 score cp 0 pv d2d4 d7d5 b1c3 b8c6 g1f3 g8f6 e2e3
info depth 8 seldepth 19 nodes 57189 time 265 nps 215807 score cp 8 pv d2d4 d7d5 b1c3 e7e6 e2e4 d5e4 c3e4 d8d5
info depth 9 seldepth 20 nodes 128087 time 469 nps 273106 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 g8f6 d1d3
info depth 10 seldepth 21 nodes 444430 time 1359 nps 327027 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 c7c5 f1b5 c5d4 d1d4
info depth 10 seldepth 21 nodes 533884 time 1609 nps 331811 currmovenumber 2 currmove e2e4 score cp 1 lowerbound
info depth 10 seldepth 23 nodes 659296 time 1937 nps 340369 score cp 8 pv e2e4 e7e6 d2d4 d7d5 e4e5 b8d7 b1c3 c7c5 g1f3 c5d4 d1d4
info depth 11 seldepth 23 nodes 1035835 time 2906 nps 356447 score cp 8 pv e2e4 e7e6 d2d4 d7d5 e4e5 b8d7 b1c3 c7c5 g1f3 c5d4 d1d4
bestmove e2e4
new
go wtime 30000
info depth 1 seldepth 1 nodes 1 time 0 nps 0 score cp 16 pv d2d4
info depth 2 seldepth 2 nodes 41 time 16 nps 2562 score cp 8 pv d2d4 d7d5
info depth 3 seldepth 4 nodes 153 time 16 nps 9562 score cp 0 pv d2d4 d7d5 b1c3
info depth 3 seldepth 8 nodes 343 time 31 nps 11064 score cp 16 pv e2e4 d7d5 f1b5 c8d7
info depth 4 seldepth 11 nodes 1077 time 47 nps 22914 score cp 8 pv e2e4 d7d5 b1c3 e7e6
info depth 5 seldepth 12 nodes 2646 time 63 nps 42000 score cp 8 pv e2e4 d7d5 b1c3 d5e4 c3e4
info depth 6 seldepth 13 nodes 6711 time 78 nps 86038 score cp 0 pv e2e4 d7d5 b1c3 d5e4 c3e4 e7e6
info depth 6 seldepth 14 nodes 10225 time 110 nps 92954 score cp 8 pv d2d4 d7d5 b1c3 b8c6 g1f3 e7e6
info depth 7 seldepth 15 nodes 17047 time 141 nps 120900 score cp 0 pv d2d4 d7d5 b1c3 b8c6 g1f3 g8f6 e2e3
info depth 8 seldepth 19 nodes 57189 time 266 nps 214996 score cp 8 pv d2d4 d7d5 b1c3 e7e6 e2e4 d5e4 c3e4 d8d5
info depth 9 seldepth 20 nodes 128087 time 469 nps 273106 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 g8f6 d1d3
info depth 10 seldepth 21 nodes 444430 time 1360 nps 326786 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 c7c5 f1b5 c5d4 d1d4
bestmove d2d4
new
go movetime 3 wtime 30000
info depth 1 seldepth 1 nodes 1 time 0 nps 0 score cp 16 pv d2d4
info depth 2 seldepth 2 nodes 41 time 0 nps 0 score cp 8 pv d2d4 d7d5
info depth 3 seldepth 4 nodes 153 time 0 nps 0 score cp 0 pv d2d4 d7d5 b1c3
info depth 3 seldepth 8 nodes 343 time 15 nps 22866 score cp 16 pv e2e4 d7d5 f1b5 c8d7
info depth 4 seldepth 11 nodes 1077 time 31 nps 34741 score cp 8 pv e2e4 d7d5 b1c3 e7e6
info depth 5 seldepth 12 nodes 2646 time 47 nps 56297 score cp 8 pv e2e4 d7d5 b1c3 d5e4 c3e4
info depth 6 seldepth 13 nodes 6711 time 62 nps 108241 score cp 0 pv e2e4 d7d5 b1c3 d5e4 c3e4 e7e6
info depth 6 seldepth 14 nodes 10225 time 94 nps 108776 score cp 8 pv d2d4 d7d5 b1c3 b8c6 g1f3 e7e6
info depth 7 seldepth 15 nodes 17047 time 125 nps 136376 score cp 0 pv d2d4 d7d5 b1c3 b8c6 g1f3 g8f6 e2e3
info depth 8 seldepth 19 nodes 57189 time 250 nps 228756 score cp 8 pv d2d4 d7d5 b1c3 e7e6 e2e4 d5e4 c3e4 d8d5
info depth 9 seldepth 20 nodes 128087 time 453 nps 282752 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 g8f6 d1d3
info depth 10 seldepth 21 nodes 444430 time 1344 nps 330677 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 c7c5 f1b5 c5d4 d1d4
bestmove d2d4
new
go movetime 3 wtime 600000
info depth 1 seldepth 1 nodes 1 time 0 nps 0 score cp 16 pv d2d4
info depth 2 seldepth 2 nodes 41 time 0 nps 0 score cp 8 pv d2d4 d7d5
info depth 3 seldepth 4 nodes 153 time 15 nps 10200 score cp 0 pv d2d4 d7d5 b1c3
info depth 3 seldepth 8 nodes 343 time 31 nps 11064 score cp 16 pv e2e4 d7d5 f1b5 c8d7
info depth 4 seldepth 11 nodes 1077 time 31 nps 34741 score cp 8 pv e2e4 d7d5 b1c3 e7e6
info depth 5 seldepth 12 nodes 2646 time 62 nps 42677 score cp 8 pv e2e4 d7d5 b1c3 d5e4 c3e4
info depth 6 seldepth 13 nodes 6711 time 78 nps 86038 score cp 0 pv e2e4 d7d5 b1c3 d5e4 c3e4 e7e6
info depth 6 seldepth 14 nodes 10225 time 109 nps 93807 score cp 8 pv d2d4 d7d5 b1c3 b8c6 g1f3 e7e6
info depth 7 seldepth 15 nodes 17047 time 140 nps 121764 score cp 0 pv d2d4 d7d5 b1c3 b8c6 g1f3 g8f6 e2e3
info depth 8 seldepth 19 nodes 57189 time 281 nps 203519 score cp 8 pv d2d4 d7d5 b1c3 e7e6 e2e4 d5e4 c3e4 d8d5
info depth 9 seldepth 20 nodes 128087 time 484 nps 264642 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 g8f6 d1d3
info depth 10 seldepth 21 nodes 444430 time 1375 nps 323221 score cp 0 pv d2d4 d7d5 b1c3 e7e6 g1f3 b8d7 e2e3 c7c5 f1b5 c5d4 d1d4
info depth 10 seldepth 21 nodes 533884 time 1625 nps 328544 currmovenumber 2 currmove e2e4 score cp 1 lowerbound
info depth 10 seldepth 23 nodes 659296 time 1937 nps 340369 score cp 8 pv e2e4 e7e6 d2d4 d7d5 e4e5 b8d7 b1c3 c7c5 g1f3 c5d4 d1d4
info depth 11 seldepth 23 nodes 1030000 time 2906 nps 354439 score cp 8 pv e2e4 e7e6 d2d4 d7d5 e4e5 b8d7 b1c3 c7c5 g1f3 c5d4 d1d4
bestmove e2e4
— Reply to this email directly or view it on GitHub[1].
Links:
http://www.fastmail.com - Does exactly what it says on the tin
Hello again Jim. I had coded the GO command parser with the misconception that movetime was in seconds. I double checked the UCI spec and movetime is supposed to be milliseconds. The fix is to stop converting movetime from seconds to milliseconds in the GoCommandHandler::Parse method. See commit https://github.com/zd3nik/SenjoUCIAdapter/commit/97fd03c7cb37f3ddf74d57aa61430fad133d4800
Thanks for bringing the problem to my attention.
Assuming no news is good news. Closing this issue.
Yes issue resolved. Thanks Shawn. All the best with the project, Jim.
Jim Ablett jim.ablett@operamail.com
On Sat, Mar 14, 2015, at 02:13 PM, Shawn Chidester wrote:
Assuming no news is good news. Closing this issue.
— Reply to this email directly or view it on GitHub[1].
Links:
http://www.fastmail.com - Email service worth paying for. Try it for free
Hi great project. Noticed movetime not working when I compiled clubfoot. Quick dirty fix below >
std::string ChessEngine::Go(const int depth, const int movestogo, const uint64_t movetime, const uint64_t wtime, const uint64_t winc, const uint64_t btime, const uint64_t binc, std::string* ponder) {
uint64_t endTime = 0; uint64_t timePerMove = 0; uint64_t timeRemaining = 0;
_stop &= ~StopReason::Timeout; _searching = true; _startTime = Now();
// set _stopTime to something smarter in MyGo() if you wish
Cheers Jim Ablett.