How to share an object: A fast timing-based solution

Rajeev Alur, Gadi Taubenfeld

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

We consider the problem of transforming a given sequential implementation of a data structure into a wait-free concurrent implementation. Given the code for different operations of an object that is designed to work under the assumption that only a single process accesses it, we want to construct an implementation that works correctly in a concurrent environment where it may be accessed by many processes. We assume a shared memory model with atomic registers. It is well known that using atomic registers it is impossible to construct concurrent implementations of even very simple objects such as test-and-set bits. However, we show that the knowledge about relative speeds of processes can be used for such implementations. We assume that there is a known upper bound on the time taken by the slowest process to execute a statement involving an access to the shared memory. This timing assumption is very powerful and enables us to construct fast wait-free implementations of data structures such as queues, stacks and synchronization primitives such as test-and-set, compare-and-swap, fetch-and-add, etc. Our transformation works only when the given sequential implementation is bounded, that is, there is a known upper bound on the number of steps required to complete any of the operations it supports. In the absence of contention, it guarantees that there is only a small overhead in the cost of executing the concurrent operations over the sequential ones, namely, only a constant number of accesses to the shared memory.

Original languageEnglish
Title of host publicationProceedings of the 5th IEEE Symposium on Parallel and Distributed Processing
Editors Anon
PublisherPubl by IEEE
Pages470-477
Number of pages8
ISBN (Print)081864222X
StatePublished - 1993
Externally publishedYes
EventProceedings of the 5th IEEE Symposium on Parallel and Distributed Processing - Dallas, TX, USA
Duration: 1 Dec 19934 Dec 1993

Publication series

NameProceedings of the 5th IEEE Symposium on Parallel and Distributed Processing

Conference

ConferenceProceedings of the 5th IEEE Symposium on Parallel and Distributed Processing
CityDallas, TX, USA
Period1/12/934/12/93

Fingerprint

Dive into the research topics of 'How to share an object: A fast timing-based solution'. Together they form a unique fingerprint.

Cite this