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