paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Testing multithreaded programs via thread speed control

通过线程速度控制测试多线程程序
FSE Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering2018匹配度 1/10 · 该论文研究多线程程序的动态并发测试与调度采样,属于软件测试/并发缺陷检测,与用户关注的静态分析、LLM/Agent 改进程序分析、浮点程序分析和贝叶斯程序分析均无直接交集。引用 17 inbox
Dongjie Chen, Yanyan Jiang, Chang Xu, Xiaoxing Ma, Jian Lu
crossref: 2026-09-12

AI 速览

一句话:提出速度空间概念,通过控制线程相对速度采样多样调度以暴露并发缺陷。

多线程程序的交错空间离散且天文数字般庞大,如何有效采样线程调度以暴露并发缺陷一直是个难题。本文观察到并发缺陷可通过调整线程的相对速度来触发,据此提出“速度空间”这一新概念:空间中的每个向量代表一族线程调度。该速度空间近似连续、易于采样,并保留特定类别的并发缺陷。作者介绍了用于探索对抗性/异常调度的速度控制调度器的设计、实现与评估。实验结果表明,该技术能有效采样到多样的调度,且其实现还在真实多线程程序中发现了此前未知的并发缺陷。

问题
多线程程序的交错空间离散且规模巨大,难以有效采样线程调度来触发并发缺陷。
方法
提出“速度空间”概念,用线程相对速度向量表示一族调度,并实现速度控制调度器来探索对抗性/异常调度。
评估
通过实验验证该技术能采样到多样的线程调度,并在真实多线程程序中发现了此前未知的并发缺陷。
原文摘要(Abstract)

A multithreaded program's interleaving space is discrete and astronomically large, making effectively sampling thread schedules for manifesting concurrency bugs a challenging task. Observing that concurrency bugs can be manifested by adjusting thread relative speeds, this paper presents the new concept of speed space in which each vector denotes a family of thread schedules. A multithreaded program's speed space is approximately continuous, easy-to-sample, and preserves certain categories of concurrency bugs. We discuss the design, implementation, and evaluation of our speed-controlled scheduler for exploring adversarial/abnormal schedules. The experimental results confirm that our technique is effective in sampling diverse schedules. Our implementation also found previously unknown concurrency bugs in real-world multithreaded programs.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot4588,
  title = {Testing multithreaded programs via thread speed control},
  author = {Dongjie Chen and Yanyan Jiang and Chang Xu and Xiaoxing Ma and Jian Lu},
  booktitle = {FSE},
  year = {2018},
  doi = {10.1145/3236024.3236077}
}