10.3321/j.issn:0253-987X.2009.08.005
Java程序数据竞争的增量式检测
针对静态竞争检测无额外运行开销但精度低,而动态竞争检测精度高但因插桩有额外运行开销,在实际Java虚拟机的即时编译器中以竞争检测遍形式设计实现了一种精确有效的增量式竞争检测算法.结合锁集和发生序关系,依次对即时编译的每个方法进行一次方法内分析,收集独立于上下文的方法摘要,并以方法摘要为基础自下而上进行上下文敏感的跨线程方法间分析,增量计算并及时输出潜在的竞争信息.实验表明,算法对应用程序无插桩且不受程序规模限制,具有与O'Callahan等人的动态竞争检测算法类似的精度,检测时间仅占总编译时间的2%~4%.
增量式检测、数据竞争、程序分析、锁集、发生序关系
43
TP311;TP314(计算技术、计算机技术)
国家自然科学基金"软件安全性的验证和编译"资助项目60673126;Intel公司研究基金"新并行编程语言特性与范型的设计及可编程性研究"资助项目
2009-09-28(万方平台首次上网日期,不代表论文的发表时间)
共7页
22-27,58