I'm grading student programs that are multithreaded using OpenMP. They ran timing tests on the MTL. Several of the programs have race conditions. When I run these programs on a processor other than the Xeon Phi the programs produce an incorrect result, as expected. To my surprise, however, they produce a correct result on the Xeon Phi. Can anyone provide any insight to this behavior or point me in the right direction? Thanks! Judy
Link Copied
PS - I guess I should say that I know data races are not deterministic. However, this behavior is very consistent and repeatable. I'm left wondering if maybe something about the Xeon Phi makes it less sensitive to data races. Judy
I am relatively curious about this effect:
Is it possible to have :
- a code that generates this effect ?
- Both configurations, for the XeonPhi the generation, if it's a KNL then coprocessor/processor, memory configuration,...
Mathieu
For more complete information about compiler optimizations, see our Optimization Notice.