Because strongly-linearizable objects provide stronger guarantees than linearizability, they serve as valuable building blocks for the design of concurrent data structures. Yet, many objects that have linearizable implementations from base objects weaker than compare&swap objects do not have strongly-linearizable implementations from the same base objects. We focus on one such object: the bag, a multiset from which processes can take unspecified elements. We present the first lock-free, strongly-linearizable implementation of a bag from interfering objects (specifically, registers, and test&set objects). This may be surprising, since there are provably no such implementations of stacks or queues. Since a bag can contain arbitrarily many elements, an unbounded amount of space must be used to implement it. Hence, it makes sense to also consider a bag with a bound on its capacity. However, like stacks and queues, a bag with capacity $b$ shared by more than $2b$ processes has no lock-free, strongly-linearizable implementation from interfering objects. If we further restrict a bounded bag so that only one process can insert into it, we are able to obtain a lock-free, strongly-linearizable implementation from $O(b + n)$ interfering objects, where $n$ is the number of processes. Our goal is to understand the circumstances under which strongly-linearizable implementations of bags exist and, more generally, to understand the power of interfering objects.


翻译:由于强线性化对象提供了比线性化更强的保证,它们成为设计并发数据结构的重要构建模块。然而,许多能够通过弱于比较交换对象的基础对象实现线性化的对象,却无法通过相同的基础对象实现强线性化。我们聚焦于其中一类对象:包(bag),即一种进程可从中取出非特定元素的多重集合。我们首次提出了基于干扰对象(具体而言,寄存器和测试置位对象)的无锁、强线性化包实现。这一结果可能令人惊讶,因为栈和队列已被证明不存在此类实现。由于包可容纳任意多元素,其实现必须使用无界空间。因此,研究容量受限的包也具有重要意义。然而,与栈和队列类似,当容量为$b$的包被超过$2b$个进程共享时,无法基于干扰对象实现无锁的强线性化。若进一步限制有界包仅允许单一进程执行插入操作,我们能够基于$O(b + n)$个干扰对象实现无锁的强线性化方案,其中$n$为进程数量。本研究旨在探究包数据结构实现强线性化的条件,并更广泛地揭示干扰对象的计算能力。

0
下载
关闭预览

相关内容

UnHiPPO:面向不确定性的状态空间模型初始化方法
专知会员服务
11+阅读 · 2025年6月6日
【NeurIPS2023】半监督端到端对比学习用于时间序列分类
专知会员服务
36+阅读 · 2023年10月17日
【CVPR2022】MSDN: 零样本学习的互语义蒸馏网络
专知会员服务
21+阅读 · 2022年3月8日
【ICLR2022】GNN-LM基于全局信息的图神经网络语义理解模型
【ICML2021】因果匹配领域泛化
专知
12+阅读 · 2021年8月12日
【CVPR2021】跨模态检索的概率嵌入
专知
17+阅读 · 2021年3月2日
LibRec 每周算法:LDA主题模型
LibRec智能推荐
29+阅读 · 2017年12月4日
语义分割中的深度学习方法全解:从FCN、SegNet到DeepLab
炼数成金订阅号
26+阅读 · 2017年7月10日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
4+阅读 · 2014年12月31日
国家自然科学基金
10+阅读 · 2014年12月31日
VIP会员
相关VIP内容
UnHiPPO:面向不确定性的状态空间模型初始化方法
专知会员服务
11+阅读 · 2025年6月6日
【NeurIPS2023】半监督端到端对比学习用于时间序列分类
专知会员服务
36+阅读 · 2023年10月17日
【CVPR2022】MSDN: 零样本学习的互语义蒸馏网络
专知会员服务
21+阅读 · 2022年3月8日
【ICLR2022】GNN-LM基于全局信息的图神经网络语义理解模型
相关资讯
【ICML2021】因果匹配领域泛化
专知
12+阅读 · 2021年8月12日
【CVPR2021】跨模态检索的概率嵌入
专知
17+阅读 · 2021年3月2日
LibRec 每周算法:LDA主题模型
LibRec智能推荐
29+阅读 · 2017年12月4日
语义分割中的深度学习方法全解:从FCN、SegNet到DeepLab
炼数成金订阅号
26+阅读 · 2017年7月10日
相关基金
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
4+阅读 · 2014年12月31日
国家自然科学基金
10+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员