PerfCurator:从公开仓库中挖掘大规模性能缺陷提交记录的数据集
软件工程
2024-06-18 v1
摘要
性能缺陷挑战软件开发,导致性能下降并浪费计算资源。软件开发人员投入大量精力来解决这些问题。策划这些性能缺陷可为软件工程研究社区提供有价值的见解,助力开发新的缓解策略。然而,目前缺乏大规模开源性能缺陷数据集。为填补这一差距,我们提出了 PerfCurator,一个大规模数据集策划器,通过仓库矿工收集性能缺陷相关提交记录。PerfCurator 采用 PcBERT-KD,一个由 1250 万参数的 BERT 模型训练,用于分类性能缺陷相关提交记录。我们的评估表明,PcBERT-KD 的准确率与 70 亿参数大语言模型相当,但计算开销显著降低,实现了在 CPU 集群上进行成本效益的部署。利用 PcBERT-KD 作为核心组件,我们在 50 节点的 CPU 集群上部署了 PerfCurator 来挖掘 GitHub 仓库。这一大规模挖掘操作结果构成了包含 11.4 万条 Python 性能缺陷修复提交、21.79 万条 C++ 以及 7.66 万条 Java 的大规模数据集。我们的结果表明,这一大规模数据集显著提升了数据驱动性能缺陷检测系统的效果。
引用
@article{arxiv.2406.11731,
title = {PerfCurator: Curating a large-scale dataset of performance bug-related commits from public repositories},
author = {Md Abul Kalam Azad and Manoj Alexender and Matthew Alexender and Syed Salauddin Mohammad Tariq and Foyzul Hassan and Probir Roy},
journal= {arXiv preprint arXiv:2406.11731},
year = {2024}
}