Author: Jon Dart
Date: 12:33:59 10/28/02
Go up one level in this thread
On October 28, 2002 at 10:43:04, Bob Durrett wrote: >Why, then, do chess engines lose on the clock? Interesting you should mention it. I've had some complaints about my engine losing on time when using "tournament" time controls (e.g. 40 moves/5 minutes). So far I only see this behavior when two engines are running on the same machine with pondering on. It looks to me like the cause is a time lag between the time Winboard sends a move to the engine and the time the engine receives and processes it. So by the time the program receives the "time" command, indicating how much time is left on its clock, that information is out of date, because the clock has actually advanced further than the time command indicates. The amount of lag seems highly variable: I've seen it anywhere from 10 milliseconds or less, up to several seconds. If this happens regularly, a program can easily mess up its time allocation and run out of time. This could be caused by the engine not polling often enough for input, but I don't think that's happening. I tried setting the polling interval to once every 5000 nodes (a fast rate), and that didn't help. Maybe under heavy load (like two engines trying to run at once) Windows is inefficient about task switching, so it takes this extra time to get the engine to execute a time slice and read the input .. that's my theory, anyway. I'm working on a fix in the engine, but maybe Winboard should require confirmation of receipt of the "time" command before starting the clock. --Jon
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.