基于克隆检测技术的性能Bugs查找
作者:
作者单位:

作者简介:

通讯作者:

中图分类号:

基金项目:

国家自然科学基金(61672480); 国家外专局111引智计划(BP0719016)


Finding Performance Bugs Based on Clone Detection Technique
Author:
Affiliation:

Fund Project:

  • 摘要
  • |
  • 图/表
  • |
  • 访问统计
  • |
  • 参考文献
  • |
  • 相似文献
  • |
  • 引证文献
  • |
  • 资源附件
  • |
  • 文章评论
    摘要:

    性能bug是指代码中降低程序运行效率的缺陷. 现有的检测工具只能查找特定类型的性能bug并且需要复杂的程序分析过程, 因而缺乏通用性并且时空开销巨大. 同时, 有许多经典的克隆检测技术被用于一般性相似代码检测, 但是它们只能检测高度相似的代码或者需要依赖训练集, 使得它们难以用于在真实数据集中查找性能bug. 基于此, 通过构建带有标记token的代码模板, 本文提出一种使用克隆检测技术来查找多种类型的性能bug的方法. 通过对不同类型和频度的token标记不同的权重, 本文提出的方法可以区分其重要性并因此提取出代码中的关键信息. 在真实项目构成的数据集上的实验表明, 本方法可以发现更多类型的性能bug同时比现有工具耗时更少. 另一项实验也证明了本方法显著提升了基于token的克隆检测技术的检测能力, 相比于现有的克隆检测方法更适合用于性能bug查找.

    Abstract:

    Performance bugs are defects in codes that slow down program execution. Existing detection tools can only find certain types of performance bugs and require complex program analysis processes. Therefore, they lack generality and need high costs in space and time. Meanwhile, many classical clone detection techniques have been used for general similar code detection, but they can only detect highly similar codes or rely on training datasets, which makes them inapplicable for detecting performance bugs in real-world datasets. To this end, this study proposes a method of using clone detection techniques to find multiple types of performance bugs by constructing code templates with labeled tokens. By labeling tokens with different weights according to their types and frequencies, this method can distinguish tokens’ importance and thus extract key information from codes. Experimental results on real-world projects show that this method can find more types of performance bugs and consume less time than existing tools. Another experiment also proves that this method significantly improves the detection capability of token-based clone detection techniques and is more suitable for finding performance bugs than existing clone detection techniques.

    参考文献
    相似文献
    引证文献
引用本文

邓子含,徐云.基于克隆检测技术的性能Bugs查找.计算机系统应用,2023,32(7):57-64

复制
分享
文章指标
  • 点击次数:
  • 下载次数:
  • HTML阅读次数:
  • 引用次数:
历史
  • 收稿日期:2022-12-21
  • 最后修改日期:2023-01-19
  • 录用日期:
  • 在线发布日期: 2023-04-07
  • 出版日期:
文章二维码
您是第位访问者
版权所有:中国科学院软件研究所 京ICP备05046678号-3
地址:北京海淀区中关村南四街4号 中科院软件园区 7号楼305房间,邮政编码:100190
电话:010-62661041 传真: Email:csa (a) iscas.ac.cn
技术支持:北京勤云科技发展有限公司

京公网安备 11040202500063号