Constant-RMR Implementations of CAS and Other Synchronization Primitives Using Read and Write Operations
We consider asynchronous multiprocessors where processes communicate only by reading or writing shared memory. We show how to implement consensus, all comparison primitives (such as CAS and TAS), and load-linked/store-conditional using only a constant number of remote memory references (RMRs), in bo...
Main Author: | |
---|---|
Other Authors: | |
Language: | en_ca |
Published: |
2010
|
Subjects: | |
Online Access: | http://hdl.handle.net/1807/26182 |
id |
ndltd-LACETR-oai-collectionscanada.gc.ca-OTU.1807-26182 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-LACETR-oai-collectionscanada.gc.ca-OTU.1807-261822013-04-17T04:18:17ZConstant-RMR Implementations of CAS and Other Synchronization Primitives Using Read and Write OperationsGolab, Wojciechdistributed computingtheoryshared memoryalgorithmscompare and swapsynchronization0984We consider asynchronous multiprocessors where processes communicate only by reading or writing shared memory. We show how to implement consensus, all comparison primitives (such as CAS and TAS), and load-linked/store-conditional using only a constant number of remote memory references (RMRs), in both the cache-coherent and the distributed-shared-memory models of such multiprocessors. Our implementations are blocking, rather than wait-free: they ensure progress provided all processes that invoke the implemented primitive are live. Our results imply that any algorithm using read and write operations, comparison primitives and load-linked/store-conditional, can be simulated by an algorithm that uses read and write operations only, with at most a constant-factor increase in RMR complexity.Hadzilacos, Vassos2010-112011-02-15T21:28:00ZNO_RESTRICTION2011-02-15T21:28:00Z2011-02-15T21:28:00ZThesishttp://hdl.handle.net/1807/26182en_ca |
collection |
NDLTD |
language |
en_ca |
sources |
NDLTD |
topic |
distributed computing theory shared memory algorithms compare and swap synchronization 0984 |
spellingShingle |
distributed computing theory shared memory algorithms compare and swap synchronization 0984 Golab, Wojciech Constant-RMR Implementations of CAS and Other Synchronization Primitives Using Read and Write Operations |
description |
We consider asynchronous multiprocessors where processes communicate only by reading or writing shared memory. We show how to implement consensus, all comparison
primitives (such as CAS and TAS), and load-linked/store-conditional using only a constant number of remote memory references (RMRs), in both the cache-coherent and the
distributed-shared-memory models of such multiprocessors. Our implementations are
blocking, rather than wait-free: they ensure progress provided all processes that invoke
the implemented primitive are live.
Our results imply that any algorithm using read and write operations, comparison
primitives and load-linked/store-conditional, can be simulated by an algorithm that uses read and write operations only, with at most a constant-factor increase in RMR complexity. |
author2 |
Hadzilacos, Vassos |
author_facet |
Hadzilacos, Vassos Golab, Wojciech |
author |
Golab, Wojciech |
author_sort |
Golab, Wojciech |
title |
Constant-RMR Implementations of CAS and Other Synchronization Primitives Using Read and Write Operations |
title_short |
Constant-RMR Implementations of CAS and Other Synchronization Primitives Using Read and Write Operations |
title_full |
Constant-RMR Implementations of CAS and Other Synchronization Primitives Using Read and Write Operations |
title_fullStr |
Constant-RMR Implementations of CAS and Other Synchronization Primitives Using Read and Write Operations |
title_full_unstemmed |
Constant-RMR Implementations of CAS and Other Synchronization Primitives Using Read and Write Operations |
title_sort |
constant-rmr implementations of cas and other synchronization primitives using read and write operations |
publishDate |
2010 |
url |
http://hdl.handle.net/1807/26182 |
work_keys_str_mv |
AT golabwojciech constantrmrimplementationsofcasandothersynchronizationprimitivesusingreadandwriteoperations |
_version_ |
1716580427524734976 |