Abstract
- 意义:研究人员提出了很多方法来检测并发错误和改善多线程程序,但是对这些方法有效性的评估仍是一个问题
- 现有的研究中用于检测这些方法有效性的程序代码或者是Bug都不具有现实意义的代表性。
- 论文的工作:为了提升代表性,论文提出了JaConTebe benchmark,47个并发错误;测试用例来描述buggy行为;验证检测方法的有效性;提交到开源库中
Introduce
- 很重视并发bug + 非法的交互很容易引入并发错误 + 现有的研究提出了很多方法,能检测错误,但在实际中不知道也是否能有效,即方法提出的人使用的被测程序不具有代表性 + 缺乏比较性。
- 为了解决bug检测方法的评估问题,需要benchmark suite(benchmark suit = 并发错误 + 测试用例) + benchmark能反应真实并发错误的特征 + benchmark的五个特征:代表性、多样性、可移植、可访问、公平性 + 现有的研究不完全具备,特别是代表性
- 论文:通过收集现有的benchmark然后引入了自己的benchmark:检测现有的测试方法的有效性 + 检测一个方法是否能检测现实的错误(对植入的bug有效,而对现实的bug不一定) + 对比这侧检测方法之间发现bug的强弱能力
- 论文贡献
1、对现有的benchmark调查并他们对现有的并发错误方法进行研究,而现有的研究不包含现实的错误的benchmark
2、创建了JaConTeBebenchmark,量化 + 提交到开源社区 + 实现了benchmark被测程序和测试用例
3、用benchmark检测三种bug检测方法的有效性(检测能力 + 局限性)
现有的benchmark研究
现有的benchmark suite研究 + 如何检测方法的有效性(局限 + benchmark特征)
- 现有的benchmark举例
- 程序如何使用到评估