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
下载
关闭预览

相关内容

离线强化学习研究综述
专知会员服务
38+阅读 · 2025年1月12日
专知会员服务
54+阅读 · 2021年10月1日
专知会员服务
135+阅读 · 2021年3月13日
基于模型的强化学习综述
专知
42+阅读 · 2022年7月13日
【总结】强化学习需要批归一化(Batch Norm)吗?
深度强化学习实验室
28+阅读 · 2020年10月8日
Distributional Soft Actor-Critic (DSAC)强化学习算法的设计与验证
深度强化学习实验室
19+阅读 · 2020年8月11日
那些值得推荐和收藏的线性代数学习资源
【OpenAI】深度强化学习关键论文列表
专知
12+阅读 · 2018年11月10日
基于强化学习的量化交易框架
机器学习研究会
30+阅读 · 2018年2月22日
国家自然科学基金
6+阅读 · 2017年6月30日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
6+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
2+阅读 · 2014年12月31日
Arxiv
0+阅读 · 1月7日
VIP会员
相关资讯
相关基金
国家自然科学基金
6+阅读 · 2017年6月30日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
6+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
2+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员