摘要
针对并发程序数据竞争检测时准确率低和开销大的问题,基于Adaboost模型设计并发程序数据竞争语句级检测方法。对多线程并发程序进行插桩操作,记录指令的相关内存信息,并对提取出的指令集做语句级转化处理,利用语句对相关属性特征构建并发程序Adaboost数据竞争检测模型,实现多线程程序数据竞争检测工具ADR。实验结果表明,相比于Eraser、Djit+和Thread Sanitizer工具,ADR能够在降低时间及内存开销的同时,有效提高分类准确率,验证了所提方法的有效性。
To address the low accuracy and high overhead in the data race detection for concurrent programs,a statement-level method for detecting the data race of concurrent programs is designed based on the Adaboost model.The multi-threaded concurrent program is inserted,and the relevant memory information of instructions is recorded.Then the extracted instruction set is transformed at the statement level.On this basis,the model for detecting the data race of concurrent programs is constructed from the relevant attribute characteristics of statements to realize the tool,ADR,for detecting the data race of multi-threaded programs.The experimental results show that compared with Eraser,Djit+and Thread Sanitizer tools,ADR can effectively improve the classification accuracy while reducing the time and memory overhead.The effectiveness of the proposed method is verified.
作者
孙家泽
易刚
舒新峰
SUN Jiaze;YI Gang;SHU Xinfeng(School of Computer Science and Technology,Xi’an University of Posts and Telecommunications,Xi’an 710121,China;Shaanxi Key Laboratory of Network Data Analysis and Intelligent Processing,Xi’an University of Posts and Telecommunications,Xi’an 710121,China)
出处
《计算机工程》
CAS
CSCD
北大核心
2021年第12期215-220,共6页
Computer Engineering
基金
陕西省重点研发计划项目(2020GY-010)
西安市产业研究项目(2019218114GXRC017CG018-GXYD17.10)
西安邮电大学研究生创新基金(CXJJLY2019051)。