bob wrote:Not even close. here are some samples from crafty. Same position. Target time of 3 seconds, using just one CPU to minimize the node variation. These results are run in a "conservative mode" where it checks the time more frequently than in real games.:
log.001: time=3.00 mat=0 n=6814217 fh=94% nps=2.3M
log.002: time=3.01 mat=0 n=6786713 fh=94% nps=2.3M
log.003: time=3.01 mat=0 n=6768568 fh=94% nps=2.2M
log.004: time=3.00 mat=0 n=6814217 fh=94% nps=2.3M
log.005: time=3.08 mat=0 n=6948342 fh=94% nps=2.3M
log.006: time=3.06 mat=0 n=6948342 fh=94% nps=2.3M
The problem is that the clock advances in "spurts" and the sample instant can occur anywhere along that spurt. I use the NPS to help control how often I sample the time, and the NPS is a non-constant as well which introduces more randomness in when the time is checked which controls how much time can be used in a search.
Well, your feedback loop of checking the time based on NPS does affect it, as well as your "conservative mode". I ran the same test:
Code: Select all
search: nodes=2040325 q=79.1% time=3.004 nps=679202
search: nodes=2030322 q=79.1% time=3.005 nps=675647
search: nodes=2040325 q=79.1% time=3.006 nps=678750
search: nodes=2040325 q=79.1% time=3.002 nps=679655
search: nodes=2045326 q=79.1% time=3.005 nps=680640
search: nodes=2035325 q=79.1% time=3.003 nps=677763
search: nodes=2045326 q=79.1% time=3.003 nps=681094
search: nodes=2050326 q=79.1% time=3.005 nps=682304
search: nodes=2040325 q=79.1% time=3.007 nps=678525
search: nodes=2050326 q=79.1% time=3.003 nps=682759
I should have been more accurate in my last post. I don't check timeout every 10000 nodes, but rather every 10000 iterations of my iterative search, which intuitively works out to close to 5000 nodes. But even so, there are just a few different outcomes.
Regardless of how unpredictable, I would not assume that they obeyed a random distribution enough to be statistically valid. If I were running the same massive tests that you were, I'd probably change to randomized node counts.
Any comments on the rest of my post?