Disentangling multi-object operations

Yehuda Afek, Michael Merritt, Gadi Taubenfeld, Dan Touitou

Research output: Contribution to conferencePaperpeer-review


We consider the problem of implementing atomic operations on multiple shared memory objects, in systems which directly support only single-object atomic operations. Our motivation is to design algorithms that exhibit both low contention between concurrent operations and a high level of concurrency, by disentangling long chains of conflicting operations. That is, operations that access widely disjoint parts of a data structure, or are widely separated in time, should not interfere with each other. The algorithm reported here extends and is based on the work of Attiya and Dagan [AD96], where a non-blocking solution is presented for two-object atomic operations. For any number, k, we present a wait-free solution for atomically accessing up to k objects. Notions of local contention and local step complexity are defined, and it is shown that the solution has low local contention and local step complexity. Relations between multi-objects and the familiar resource allocation problem are explored-the algorithm presented also provides a solution to the resource allocation problem.

Original languageEnglish
Number of pages10
StatePublished - 1997
Externally publishedYes
EventProceedings of the 1997 16th Annual ACM Symposium on Principles of Distributed Computing - Santa Barbara, CA, USA
Duration: 21 Aug 199724 Aug 1997


ConferenceProceedings of the 1997 16th Annual ACM Symposium on Principles of Distributed Computing
CitySanta Barbara, CA, USA


Dive into the research topics of 'Disentangling multi-object operations'. Together they form a unique fingerprint.

Cite this