请问Thread Checker的几个问题
首先肯定Thread Checker很棒,特别对于openmp编程,开发者不需要绞尽脑汁的去分析可能的数据冲突问题。
但是Thread Checker也不是很理想,因为它检测到的数据冲突问题通常大于真正的冲突数量,而且我感觉还存在假阳性问题,目前使用中我碰到的问题主要是下面几个,希望能得到专业人士的指点:
1)假阳性问题
伪共享的情况被检测成数据冲突。伪共享会影响多线程性能,但是检测成数据冲突是不是太严重了点。
2)源代码定位问题
一般情况下可以定位到正常的源代码位置,但是当我的代码中使用了标准库,数据冲突直接定位到标准库代码里了,而不是定位到我关心的我使用标准库的地方。