Local-spin Algorithms for Variants of Mutual Exclusion Using Read and Write Operations
Mutual exclusion (ME) is used to coordinate access to shared resources by concurrent processes. We investigate several new N-process shared-memory algorithms for variants of ME, each of which uses only reads and writes, and is local-spin, i.e., has bounded remote memory reference (RMR) complexity. W...
Main Author: | |
---|---|
Other Authors: | |
Language: | en_ca |
Published: |
2011
|
Subjects: | |
Online Access: | http://hdl.handle.net/1807/29697 |
id |
ndltd-TORONTO-oai-tspace.library.utoronto.ca-1807-29697 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-TORONTO-oai-tspace.library.utoronto.ca-1807-296972013-04-19T19:55:41ZLocal-spin Algorithms for Variants of Mutual Exclusion Using Read and Write OperationsDanek, Robertcompuer sciencealgorithmsdistributed computingmutual exclusion0984Mutual exclusion (ME) is used to coordinate access to shared resources by concurrent processes. We investigate several new N-process shared-memory algorithms for variants of ME, each of which uses only reads and writes, and is local-spin, i.e., has bounded remote memory reference (RMR) complexity. We study these algorithms under two different shared-memory models: the distributed shared-memory (DSM) model, and the cache-coherent (CC) model. In particular, we present the first known algorithm for first- come-first-served (FCFS) ME that has O(log N) RMR complexity in both the DSM and CC models, and uses only atomic reads and writes. Our algorithm is also adaptive to point contention, i.e., the number of processes that are simultaneously active during a passage by some process. More precisely, the number of RMRs a process makes per passage in our algorithm is \Theta(min(c, log N)), where c is the point contention. We also present the first known FCFS abortable ME algorithm that is local-spin and uses only atomic reads and writes. This algorithm has O(N) RMR complexity in both the DSM and CC models, and is in the form of a transformation from abortable ME to FCFS abortable ME. In conjunction with other results, this transformation also yields the first known local-spin group mutual exclusion algorithm that uses only atomic reads and writes. Additionally, we present the first known local-spin k-exclusion algorithms that use only atomic reads and writes and tolerate up to k − 1 crash failures. These algorithms have RMR complexity O(N) in both the DSM and CC models. The simplest of these algorithms satisfies a new fairness property, called k-FCFS, that generalizes the FCFS fairness property for ME algorithms. A modification of this algorithm satisfies the stronger first-in-first-enabled (FIFE) fairness property. Finally, we present a modification to the FIFE k-exclusion algorithm that works with non-atomic reads and writes. The high-level structure of all our k-exclusion algorithms is inspired by Lamport’s famous Bakery algorithm.Hadzilacos, Vassos2011-062011-08-30T14:22:41ZNO_RESTRICTION2011-08-30T14:22:41Z2011-08-30Thesishttp://hdl.handle.net/1807/29697en_ca |
collection |
NDLTD |
language |
en_ca |
sources |
NDLTD |
topic |
compuer science algorithms distributed computing mutual exclusion 0984 |
spellingShingle |
compuer science algorithms distributed computing mutual exclusion 0984 Danek, Robert Local-spin Algorithms for Variants of Mutual Exclusion Using Read and Write Operations |
description |
Mutual exclusion (ME) is used to coordinate access to shared resources by concurrent
processes. We investigate several new N-process shared-memory algorithms for variants
of ME, each of which uses only reads and writes, and is local-spin, i.e., has bounded
remote memory reference (RMR) complexity. We study these algorithms under two
different shared-memory models: the distributed shared-memory (DSM) model, and the
cache-coherent (CC) model. In particular, we present the first known algorithm for first-
come-first-served (FCFS) ME that has O(log N) RMR complexity in both the DSM and
CC models, and uses only atomic reads and writes. Our algorithm is also adaptive to
point contention, i.e., the number of processes that are simultaneously active during a
passage by some process. More precisely, the number of RMRs a process makes per
passage in our algorithm is \Theta(min(c, log N)), where c is the point contention. We also
present the first known FCFS abortable ME algorithm that is local-spin and uses only
atomic reads and writes. This algorithm has O(N) RMR complexity in both the DSM
and CC models, and is in the form of a transformation from abortable ME to FCFS
abortable ME. In conjunction with other results, this transformation also yields the
first known local-spin group mutual exclusion algorithm that uses only atomic reads
and writes. Additionally, we present the first known local-spin k-exclusion algorithms
that use only atomic reads and writes and tolerate up to k − 1 crash failures. These algorithms have RMR complexity O(N) in both the DSM and CC models. The simplest
of these algorithms satisfies a new fairness property, called k-FCFS, that generalizes the
FCFS fairness property for ME algorithms. A modification of this algorithm satisfies the
stronger first-in-first-enabled (FIFE) fairness property. Finally, we present a modification
to the FIFE k-exclusion algorithm that works with non-atomic reads and writes. The
high-level structure of all our k-exclusion algorithms is inspired by Lamport’s famous
Bakery algorithm. |
author2 |
Hadzilacos, Vassos |
author_facet |
Hadzilacos, Vassos Danek, Robert |
author |
Danek, Robert |
author_sort |
Danek, Robert |
title |
Local-spin Algorithms for Variants of Mutual Exclusion Using Read and Write Operations |
title_short |
Local-spin Algorithms for Variants of Mutual Exclusion Using Read and Write Operations |
title_full |
Local-spin Algorithms for Variants of Mutual Exclusion Using Read and Write Operations |
title_fullStr |
Local-spin Algorithms for Variants of Mutual Exclusion Using Read and Write Operations |
title_full_unstemmed |
Local-spin Algorithms for Variants of Mutual Exclusion Using Read and Write Operations |
title_sort |
local-spin algorithms for variants of mutual exclusion using read and write operations |
publishDate |
2011 |
url |
http://hdl.handle.net/1807/29697 |
work_keys_str_mv |
AT danekrobert localspinalgorithmsforvariantsofmutualexclusionusingreadandwriteoperations |
_version_ |
1716581826286321664 |