paperbot · PL 论文追踪

全部论文 待读 收藏

P2 PerfGen: Automated Performance Benchmark Generation for Big Data Analytics

PerfGen:面向大数据分析的自动化性能基准生成
FSE Proceedings of the 34th ACM International Conference on the Foundations of Software Engineering2026匹配度 3/10 · 该论文属于动态分析(灰盒模糊测试)用于大数据分析性能基准生成,与用户核心关注的静态分析、浮点程序分析与贝叶斯程序分析无直接关联;仅在‘以 LLM 作为工具辅助程序分析’和‘为缺乏基准的重要场景设计 benchmark’两点上与研究画像有轻微交集,但 LLM 伪逆函数仅是其中一个小环节,且研究目标与大数据性能测试领域都偏离主线。引用 1 inbox
Jiyuan Wang, Jason Teoh, Muhammad Ali Gulzar, Qian Zhang, Miryung Kim
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:提出 PerfGen,用性能引导的灰盒模糊测试与 LLM 伪逆函数自动生成触发大数据分析性能症状的输入。

大数据分析中的计算倾斜、数据倾斜和内存倾斜等性能症状往往依赖输入,但缺少能触发症状的输入,导致调试和测试困难。PerfGen 面向性能测试自动生成输入,解决三个挑战:用用户可扩展的性能监控模板替代覆盖率作为灰盒模糊测试的引导指标;采用分阶段模糊测试,先在中间阶段找到致症输入,再用大语言模型生成伪逆函数将其转回程序起始输入;并定义倾斜启发的变异操作以提高触发概率。四个案例研究表明,PerfGen 在生成触发性能症状的输入时比传统模糊测试至少加速 43 倍;借助最多 2 次提示迭代生成的伪逆函数,其所需迭代次数不到基线方法的 0.004%。

问题
大数据分析的性能症状通常依赖输入,而缺少能触发这些症状的输入使得性能调试与测试十分困难。
方法
PerfGen 使用性能监控模板引导灰盒模糊测试,采用分阶段模糊测试与 LLM 生成的伪逆函数,并设计倾斜启发的输入变异来自动生成性能测试输入。
评估
通过四个案例研究并与传统模糊测试基线比较,PerfGen 生成触发性能症状输入的速度至少提升 43 倍,且所需迭代次数不到基线的 0.004%。
原文摘要(Abstract)

Many symptoms of poor performance in big data analytics such as computational skews, data skews, and memory skews are input dependent. However, due to lack of inputs that can trigger such performance symptoms, it is hard to debug and test big data analytics. We design PerfGen to automatically generate inputs for the purpose of performance testing. PerfGen overcomes three challenges when naively using automated fuzz testing for the purpose of performance testing. First, typical greybox fuzzing relies on coverage as a guidance signal and thus is unlikely to trigger interesting performance behavior. Therefore, PerfGen provides performance monitor templates that a user can extend to serve as a set of guidance metrics for grey-box fuzzing. Second, performance symptoms may occur at an intermediate or later stage of a big data analytics pipeline. Thus, PerfGen uses a phased fuzzing approach. This approach identifies symptom-causing intermediate inputs at an intermediate stage first and then converts them to the inputs at the beginning of the program with a pseudo-inverse function generated by a large language model. Third, PerfGen defines sets of skew-inspired input mutations, which increases the chance of inducing performance problems. We evaluate PerfGen using four case studies. PerfGen achieves at least 43X speedup compared to a traditional fuzzing approach when generating inputs to trigger performance symptoms. Additionally, identifying intermediate inputs first and then converting them to original inputs by pseudo-inverse functions, which only takes up to 2 prompting iterations using a large language model, enables PerfGen to generate such workloads in less than 0.004% of the iterations required by a baseline approach.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@inproceedings{abs-2412-04687,
  title = {PerfGen: Automated Performance Benchmark Generation for Big Data Analytics},
  author = {Jiyuan Wang and Jason Teoh and Muhammad Ali Gulzar and Qian Zhang and Miryung Kim},
  booktitle = {FSE},
  year = {2026},
  doi = {10.1145/3803437.3806095}
}