Open MelleKoning opened 4 years ago
I tried changing the verbosemovestats to False on line
params["VerboseMoveStats"] = False # False to prevent errors, True to have a good log.
But it turns out this does not help at all.
The problem seems to be a timing error on slower hardware. When I decrease the amount of nodes from 800 to 100, the results start showing. However when increasing the nodes back up, then the exception is thrown again.
As the lc0 logs themselves do show several finished analysed positions on 800 nodes I suspect there is some time-out issue that is not detected either within the numpy python-chess package or the position-tester python code not able to pick it up (see stack trace above).
Have looked up the line that reeds:
raise EngineTerminatedError("engine event loop dead")
in engine.py
as well as the set 'Limit' for the chess-engine but I do not see an issue with setting a limit of Nodes to 800, I do not yet see why setting a limit to 800 causes issues while setting limit to 100 nodes so far does not cause issues.
Of course, on my hardware, running 800 nodes takes above 4 seconds, which is long, but still do not have a clue how to prevent the exception.
Got the tester running after some fiddling with settings.
What I found is that the position tester sometimes fails with the following exception, and on my hardware the exception is more frequent when I increase either the nodecount or the timecontrol.
The logs of leela usually show multiple finished test positions while the position-tester could not play catch up. Maybe parsing the amount of uci-info strings is the reason the exception occurs?