CC 与 DSM 模型下常数均摊 RMR 复杂度的确定性可中止互斥算法
分布式、并行与集群计算
2018-09-13 v1
摘要
可中止互斥问题由 Scott 和 Scherer 提出,以满足数据库和实时系统中出现的需求,其中进程有时不得不放弃获取互斥锁的尝试,以从潜在死锁中恢复或避免超过截止时间。对于标准互斥问题,在缓存一致 (CC) 和分布式共享内存 (DSM) 多处理器模型中均已存在 O(1) RMR 复杂度的算法,但可中止互斥是否也能达到 O(1) RMR 复杂度,在该问题被研究的 18 年来一直悬而未决。Jayanti 给出了两种模型的 Theta(log n) 最坏情况 RMR 复杂度解,其中 n 为并发执行该算法的最大进程数。Giakouppis 和 Woelfel 去年在 PODC 上提出的算法是 O(1) 均摊复杂度算法,但仅适用于 CC 模型,使用随机化,不满足无饥饿自由,且 O(1) 均摊界仅依期望成立,并针对弱( oblivious)对手模型证明。我们设计的算法无这些限制:我们的算法是确定性的,支持快速中止(进程在 O(1) 步内完成中止),具有 O(n) 的小空间复杂度,仅需 Fetch&Store 指令的硬件支持,满足新定义的可中止锁先来先服务,且最重要的是,对 CC 和 DSM 模型均具有 O(1) 均摊 RMR 复杂度。我们的算法简短实用,代码不足十二行,并附有通过不变式对互斥的严格证明,以及通过距离和势函数对无饥饿自由和复杂度的分析。因此,除均摊外,我们的结果对上述长期未决问题给出了肯定回答。
引用
@article{arxiv.1809.04561,
title = {Constant Amortized RMR Complexity Deterministic Abortable Mutual Exclusion Algorithm for CC and DSM Models},
author = {Prasad Jayanti and Siddhartha Jayanti},
journal= {arXiv preprint arXiv:1809.04561},
year = {2018}
}
备注
19 pages with appendix and references