paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Atomicity Checking in Linear Time using Vector Clocks

使用向量时钟的线性时间原子性检查
ASPLOS Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems2020匹配度 2/10 · 该论文是并发程序的动态原子性/冲突可串行化检测算法,属于程序分析方向,但不涉及用户核心关注的 LLM/Agent、静态分析×AI、浮点程序分析或贝叶斯程序分析;与画像中 PL 与 AI 的交叉主题几乎没有直接关联。引用 26 inbox
Umang Mathur, Mahesh Viswanathan
crossref: 2026-09-12

AI 速览

一句话:提出基于向量时钟的单遍线性时间算法 AeroDrome,在线检测冲突可串行化违反以实现原子性检查。

多线程程序的行为依赖于线程交错,开发者难以推理。原子性等非干扰性质可把执行等价为原子块串行执行的执行,从而缩减交错空间;冲突可串行化是动态检查原子性的经典判据。已有算法通过检测执行中事务依赖图里的环来发现违反,但图中边数可能随迹长度平方增长,导致分析不可扩展。本文提出 AeroDrome:一种基于向量时钟的单遍、线性时间、在线算法,用于检测冲突可串行化的违反。它避免构造平方规模的事务图,在事件流上以线性时间完成检查。实验表明,AeroDrome 可扩展到包含大量事件的迹,并取得显著加速。

问题
如何可扩展地在线检测多线程执行中的原子性违反,即冲突可串行化违反。
方法
提出 AeroDrome,使用向量时钟在单遍扫描中线性时间检测冲突可串行化违反,避免显式构造边数随迹长度平方增长的事务依赖图。
评估
在包含大量事件的多线程执行迹上进行实验,结果表明 AeroDrome 具有良好的可扩展性并获得显著加速。
原文摘要(Abstract)

Multi-threaded programs are challenging to write. Developers often need to reason about a prohibitively large number of thread interleavings to reason about the behavior of software. A non-interference property like atomicity can reduce this interleaving space by ensuring that any execution is equivalent to an execution where all atomic blocks are executed serially. We consider the well studied notion of conflict serializability for dynamically checking atomicity. Existing algorithms detect violations of conflict serializability by detecting cycles in a graph of transactions observed in a given execution. The number of edges in such a graph can grow quadratically with the length of the trace making the analysis not scalable. In this paper, we present AeroDrome, a novel single pass linear time algorithm that uses vector clocks to detect violations of conflict serializability in an online setting. Experiments show that AeroDrome scales to traces with a large number of events with significant speedup.

链接与引用

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

BibTeX
@inproceedings{paperbot5430,
  title = {Atomicity Checking in Linear Time using Vector Clocks},
  author = {Umang Mathur and Mahesh Viswanathan},
  booktitle = {ASPLOS},
  year = {2020},
  doi = {10.1145/3373376.3378475}
}