paperbot · PL 论文追踪

全部论文 待读 收藏

P1 SATune: A Study-Driven Auto-Tuning Approach for Configurable Software Verification Tools

SATune:一种面向可配置软件验证工具的实证研究驱动自动调优方法
ASE 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE)2021匹配度 5/10 · 论文属于用机器学习/元启发式搜索改进程序验证工具的配置,与“AI→PL”中利用 AI 改进形式化验证/静态分析的方向部分重合;但其核心不是 LLM/Agent,也不涉及浮点程序分析或贝叶斯程序分析,因此不贴近当前核心问题。引用 8 inbox
Ugur Koc, Austin Mordahl, Shiyi Wei, Jeffrey S. Foster, Adam A. Porter
crossref: 2026-09-12

AI 速览

一句话:通过实证数据集揭示验证工具无通用最优配置,并提出基于代理适应度搜索的自动配置工具 SATune。

许多程序验证工具提供运行时配置选项,在性能、精度和可靠性之间权衡,但用户通常使用默认配置,因为理解这些权衡需要专业知识。本文首先构建了一个数据集,用四款知名验证工具运行多种 C 和 Java 基准,并将结果标记为正确、错误或不确定(如超时)。分析发现不存在一劳永逸的最佳配置,且许多配置选项的取舍随程序变化,并非简单单调。为此作者提出 SATune:基于元启发式搜索构造配置,并由在数据集上训练的代理适应度函数引导。与最佳单一配置、最精确配置后接最正确配置、最精确配置后接随机搜索三种基线相比,SATune 能以更高精度完成更多正确任务。

问题
程序验证工具虽可配置,但用户难以理解性能、精度与可靠性权衡,常依赖默认配置;论文探究单一默认配置是否足够通用,并如何为给定目标程序自动选择配置。
方法
构建覆盖四款验证工具与 C/Java 基准的结果数据集,分析配置选项的取舍;提出 SATune,用元启发式搜索,并以数据集上训练的代理适应度函数引导配置构造。
评估
在数据集与三类基线(最佳单一配置、最精确后最正确、最精确后随机搜索)比较,SATune 以更高精度完成更多正确任务。
原文摘要(Abstract)

Many program verification tools can be customized via run-time configuration options that trade off performance, precision, and soundness. However, in practice, users often run tools under their default configurations, because understanding these tradeoffs requires significant expertise. In this paper, we ask how well a single, default configuration can work in general, and we propose SATune, a novel tool for automatically configuring program verification tools for given target programs. To answer our question, we gathered a dataset that runs four well-known program verification tools against a range of C and Java benchmarks, with results labeled as correct, incorrect, or inconclusive (e.g., timeout). Examining the dataset, we find there is generally no one-size-fits-all best configuration. Moreover, a statistical analysis shows that many individual configuration options do not have simple tradeoffs: they can be better or worse depending on the program.Motivated by these results, we developed SATune, which constructs configurations using a meta-heuristic search. The search is guided by a surrogate fitness function trained on our dataset. We compare the performance of SATune to three baselines: a single configuration with the most correct results in our dataset; the most precise configuration followed by the most correct configuration (if needed); and the most precise configuration followed by random search (also if needed). We find that SATune outperforms these approaches by completing more correct tasks with high precision. In summary, our work shows that good configurations for verification tools are not simple to find, and SATune takes an important step towards automating the process of finding them.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot6587,
  title = {SATune: A Study-Driven Auto-Tuning Approach for Configurable Software Verification Tools},
  author = {Ugur Koc and Austin Mordahl and Shiyi Wei and Jeffrey S. Foster and Adam A. Porter},
  booktitle = {ASE},
  year = {2021},
  doi = {10.1109/ase51524.2021.9678761}
}