paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Don’t Sit on the Fence

不要坐在栅栏上
TOPLAS 39(2)2017匹配度 2/10 · 该论文属于静态分析/程序分析领域,关注并发内存栅栏自动放置与可扩展性,并具备工具实现和较大规模实验;但用户核心方向是 PL 与 AI/LLM/Agent 的交叉、浮点程序分析及贝叶斯程序分析,本文均未涉及,因此仅与广义程序分析背景弱相关。引用 91 inbox
Jade Alglave, Daniel Kroening, Vincent Nimal, Daniel Poetzl
dblp: 2026-09-10crossref: 2026-09-10arxiv: 2026-09-10

AI 速览

一句话:提出面向大型代码库的内存栅栏自动放置技术,以精度换可扩展性,并实现为 musketeer 工具。

现代体系结构通过内存栅栏来避免内存一致性被过度削弱,但栅栏语义精细,精确的一致性恢复方法难以扩展到真实系统代码。本文提出一种以精度换取真正可扩展性的内存栅栏自动放置技术,目标适用于大型代码库;作者将其实现为新工具 musketeer,并在 Debian GNU/Linux 7.1 的 700 多个可执行文件上进行实验,其中包括约 10,000 行代码的 memcached。摘要未给出具体精度或性能数值,但强调该技术面向部署系统代码的可扩展性。

问题
现代体系结构依赖内存栅栏防止内存一致性被不希望地削弱,但栅栏语义微妙,精确的自动放置方法难以扩展到真实系统代码。
方法
提出以精度换可扩展性的内存栅栏自动放置技术,适用于大型代码库,并在新工具 musketeer 中实现。
评估
在 Debian GNU/Linux 7.1 的 700 多个可执行文件(含约 10,000 行代码的 memcached)上开展实验,验证其可扩展性。
原文摘要(Abstract)

Modern architectures rely on memory fences to prevent undesired weakenings of memory consistency. As the fences’ semantics may be subtle, the automation of their placement is highly desirable. But precise methods for restoring consistency do not scale to deployed systems’ code. We choose to trade some precision for genuine scalability: our technique is suitable for large code bases. We implement it in our new musketeer tool and report experiments on more than 700 executables from packages found in Debian GNU/Linux 7.1, including memcached with about 10,000 LoC.

链接与引用

DOI 原文 · arXiv · DBLP

BibTeX
@article{AlglaveKNP13,
  title = {Don’t Sit on the Fence},
  author = {Jade Alglave and Daniel Kroening and Vincent Nimal and Daniel Poetzl},
  journal = {ACM Transactions on Programming Languages and Systems},
  volume = {39},
  number = {2},
  year = {2017},
  doi = {10.1145/2994593}
}