Important Notice: Our web hosting provider recently started charging us for additional visits, which was unexpected. In response, we're seeking donations. Depending on the situation, we may explore different monetization options for our Community and Expert Contributors. It's crucial to provide more returns for their expertise and offer more Expert Validated Answers or AI Validated Answers. Learn more about our hosting issue here.

Why do I get the message “Detected nondeterminism outside the control of CHESS” when I run CHESS on my program?

0
Posted

Why do I get the message “Detected nondeterminism outside the control of CHESS” when I run CHESS on my program?

0

The goal of CHESS is to provide deterministic testing for multithreaded programs in which the only source of nondeterminism is thread scheduling. CHESS runs your test function repeatedly, taking it through a different thread schedule each time. CHESS reports this message when it detects any source of nondeterminism different from thread scheduling, such as the use of hardware counters or the time of day. CHESS also reports this message if the test function does not bring the program state it was started in. This commonly happens if global or static variables are initialized by the test function itself. You should make sure that all initialization for the test occurs in the ChessTestStartup function; if necessary, execute ChessTestRun a few times in ChessTestStartup.

Related Questions

What is your question?

*Sadly, we had to bring back ads too. Hopefully more targeted.

Experts123