Deadlocks are one of the most notorious concurrency bugs, and significant research has focused on detecting them efficiently. Dynamic predictive analyses work by observing concurrent executions, and reason about alternative interleavings that can witness concurrency bugs. Such techniques offer scalability and sound bug reports, and have emerged as an effective approach for concurrency bug detection, such as data races. Effective dynamic deadlock prediction, however, has proven a challenging task, as no deadlock predictor currently meets the requirements of soundness, high-precision, and efficiency. In this paper, we first formally establish that this tradeoff is unavoidable, by showing that (a) sound and complete deadlock prediction is intractable, in general, and (b) even the seemingly simpler task of determining the presence of potential deadlocks, which often serve as unsound witnesses for actual predictable deadlocks, is intractable. The main contribution of this work is a new class of predictable deadlocks, called sync(hronization)-preserving deadlocks. Informally, these are deadlocks that can be predicted by reordering the observed execution while preserving the relative order of conflicting critical sections. We present two algorithms for sound deadlock prediction based on this notion. Our first algorithm SyncPDOffline detects all sync-preserving deadlocks, with running time that is linear per abstract deadlock pattern, a novel notion also introduced in this work. Our second algorithm SyncPDOnline predicts all sync-preserving deadlocks that involve two threads in a strictly online fashion, runs in overall linear time, and is better suited for a runtime monitoring setting. We implemented both our algorithms and evaluated their ability to perform offline and online deadlock-prediction on a large dataset of standard benchmarks.


翻译:死锁是最臭名昭著的并发错误之一,大量研究聚焦于如何高效检测死锁。动态预测分析通过观察并发执行过程,并推理可能见证并发错误的替代交错序列。此类技术具有可扩展性和可靠的错误报告,已发展成为并发错误检测(如数据竞争)的有效方法。然而,有效的动态死锁预测始终是一项艰巨挑战,因为目前尚无死锁预测器能同时满足可靠性、高精度和高效性。本文首先通过理论论证正式表明这种权衡不可避免:(a)一般而言,可靠且完备的死锁预测在计算上难以处理;(b)甚至看似更简单的潜在死锁判定任务(这类死锁常作为实际可预测死锁的不可靠见证)同样难以处理。本研究的主要贡献是提出一类新的可预测死锁——同步保持死锁。直观而言,此类死锁可通过在保持冲突临界区相对顺序的前提下重新排列观测执行顺序来预测。我们基于该概念提出两种可靠的死锁预测算法:第一种算法SyncPDOffline可检测全部同步保持死锁,其运行时间与每个抽象死锁模式(本文提出的另一新概念)呈线性关系;第二种算法SyncPDOnline能以严格在线方式预测所有涉及两个线程的同步保持死锁,整体运行时间为线性,更适合运行时监控场景。我们实现了这两种算法,并在包含标准基准测试的大规模数据集上评估了其离线和在线死锁预测能力。

0
下载
关闭预览

相关内容

GNN 新基准!Long Range Graph Benchmark
图与推荐
0+阅读 · 2022年10月18日
VCIP 2022 Call for Demos
CCF多媒体专委会
1+阅读 · 2022年6月6日
【紫冬声音】基于人体骨架的行为识别
中国自动化学会
17+阅读 · 2019年1月30日
利用动态深度学习预测金融时间序列基于Python
量化投资与机器学习
18+阅读 · 2018年10月30日
Hierarchical Imitation - Reinforcement Learning
CreateAMind
19+阅读 · 2018年5月25日
Reinforcement Learning: An Introduction 2018第二版 500页
CreateAMind
14+阅读 · 2018年4月27日
【论文】变分推断(Variational inference)的总结
机器学习研究会
39+阅读 · 2017年11月16日
【推荐】RNN/LSTM时序预测
机器学习研究会
25+阅读 · 2017年9月8日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
3+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2008年12月31日
Arxiv
17+阅读 · 2022年1月11日
Arxiv
25+阅读 · 2021年6月25日
VIP会员
最新内容
ICML 2026 | 演化选择的因果建模
专知会员服务
0+阅读 · 今天15:45
综述|学习式3D表征最新进展与趋势
专知会员服务
1+阅读 · 今天15:37
人工智能重塑威慑:算法优势的兴起
专知会员服务
3+阅读 · 今天14:27
AgentOps综述:智能体系统运维框架
专知会员服务
14+阅读 · 6月4日
《美陆军最新条令:兵力防护》
专知会员服务
9+阅读 · 6月4日
《人工智能的挑战:算法战的想象与现实》
专知会员服务
11+阅读 · 6月4日
首场人工智能战争:Maven如何重塑武装冲突
专知会员服务
7+阅读 · 6月4日
相关VIP内容
相关资讯
GNN 新基准!Long Range Graph Benchmark
图与推荐
0+阅读 · 2022年10月18日
VCIP 2022 Call for Demos
CCF多媒体专委会
1+阅读 · 2022年6月6日
【紫冬声音】基于人体骨架的行为识别
中国自动化学会
17+阅读 · 2019年1月30日
利用动态深度学习预测金融时间序列基于Python
量化投资与机器学习
18+阅读 · 2018年10月30日
Hierarchical Imitation - Reinforcement Learning
CreateAMind
19+阅读 · 2018年5月25日
Reinforcement Learning: An Introduction 2018第二版 500页
CreateAMind
14+阅读 · 2018年4月27日
【论文】变分推断(Variational inference)的总结
机器学习研究会
39+阅读 · 2017年11月16日
【推荐】RNN/LSTM时序预测
机器学习研究会
25+阅读 · 2017年9月8日
相关基金
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
3+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
0+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2009年12月31日
国家自然科学基金
1+阅读 · 2008年12月31日
Top
微信扫码咨询专知VIP会员