For LU, two tools (Intel Inspector and Archer)can analyze it without crashes or timeout. Both tools report that a function named blts has data races. Our investigation finds that blts has two parallel loops using nowait, combined with a flush directive to synchronize memory operations. None of the two tools can recognize this complicated code pattern.
For LU, two tools (Intel Inspector and Archer)can analyze it without crashes or timeout. Both tools report that a function named blts has data races. Our investigation finds that blts has two parallel loops using nowait, combined with a flush directive to synchronize memory operations. None of the two tools can recognize this complicated code pattern.