MikeB wrote:pk the updated polyglot helps all uci engines in general
did discovered that neither xboard or the match program can run matches fairly at time control 0.6 seconds since they both only go down to 1 sec base so here's a mini with 1 sec base and .01 second inc
I would take a look at the Senpai code - it uses chrono, it is uci and it's cpp. It is apparently not impacted detrimentally at all by tc of 1 sec base and .01 increment
I don't think there is any problem with the texel, chrono, OSX combination. That was just a suspicion I had that turned out to be unfounded.
A significant effect is that texel uses a 1 second "time buffer", which means it tries to always leave at least this amount of time on its clock. When the base time is as small or smaller than the time buffer it means texel will play on increment only. This also explains why texel suffered a lot worse than many other UCI engines when polyglot incorrectly told it the increment was 0.
In 1.05 the time buffer is a compile time constant but in the development version of texel it is a UCI parameter. I tested the effect of this parameter against senpai using time control 1 sec base and 0.01 sec inc.
Time buffer = 1s (default)
Rank Name Elo + - games score oppo. draws
1 senpai10 65 4 4 7371 67% -65 20%
2 TexelHead -65 4 4 7371 33% 65 20%
Time buffer = 50ms
Rank Name Elo + - games score oppo. draws
1 TexelHead 11 3 4 11549 53% -11 22%
2 senpai10 -11 4 3 11549 47% 11 22%
So at this time control texel's default conservative time buffer setting costs about 150 elo. I still like a conservative default because in more normal time controls the elo effect is negligible.
Indeed, I guess this deserves to be in the standard version of Polyglot.
Note that the base time in the level command to Polyglot is irrelevant, as it will always be superceded by the 'time' command, which has centi-sec precision. So if you play 0.6 sec base time XBoard will send 'time 60' to Polyglot after the 'level' command.
Also note that you can trick XBoard into using base times with fractional seconds by specifying a time-odds factor. If you specify a factor of 10, you could enter 6 sec base time to get 0.6 sec.
MikeB wrote:pk the updated polyglot helps all uci engines in general
did discovered that neither xboard or the match program can run matches fairly at time control 0.6 seconds since they both only go down to 1 sec base so here's a mini with 1 sec base and .01 second inc
I would take a look at the Senpai code - it uses chrono, it is uci and it's cpp. It is apparently not impacted detrimentally at all by tc of 1 sec base and .01 increment
running some tc 15sec base /.25 sec inc and 60/1 games next
Are you talking about my match referee program? If so, what is going wrong?
yes, the level might not be right, but the clock will be updated with the time/otim commands and that is in 1/100ths which should work. However, I would not play sub 1 second matches under any conditions myself. When you start running matches at a level that is getting close to the scheduling time quantum, you invite way too much non-determinism into the games. That's why I don't play below 10s base time, ever. And this doesn't scale very well either. If your machine is 2x faster, you can't to to 1/2 the base time, because the process scheduler runs at the SAME resolution on both...
If you are using elapsed time, which almost everyone does, you can't afford to get down into the time control lengths where interrupt processing and context-switching can be a significant fraction of a target time for a move..