《表1 测试用例:基于静态调度的多线程程序分析方法》
图6给出了3种不同的多线程控制流图对MHP计算精度的影响,并将G1的MHP计算结果归一化。对于大多数的测试程序,都能得到,即说明本文提出的算法可以有效地匹配join和signal-wait语句,从而直接减少了MHP分析结果的误报。但是,对于splensh2.volrend和icecast,MHPG2和MHPG3并没有少于MHPG1,这是因为这两个程序中,没有匹配的同步源语。此外,由实验结果可以发现:对于很多测试用例,MHPG3的效果和MHPG2的效果基本一样。这是由于signal-wait语句的匹配通常要难于join语句的匹配,并且signal-wait更多地出现在较复杂的多线程程序结构中,尤其如果signal-wait出现在多生产者单消费者的模型中,那么总是需要利用启发式方法将这类signal-wait的匹配删除,以达到MHP分析结果的保守性。
图表编号 | XD0020616700 严禁用于非法目的 |
---|---|
绘制时间 | 2018.07.01 |
作者 | 周卿、李炼、冯晓兵 |
绘制单位 | 中国科学院计算技术研究所计算机系统结构国家重点实验室、中国科学院大学、中国科学院计算技术研究所计算机系统结构国家重点实验室、中国科学院大学、中国科学院计算技术研究所计算机系统结构国家重点实验室、中国科学院大学 |
更多格式 | 高清、无水印(增值服务) |