Results 1  10
of
28
Sharedmemory mutual exclusion: Major research trends since
 Distributed Computing
, 1986
"... * Exclusion: At most one process executes its critical section at any time. ..."
Abstract

Cited by 67 (6 self)
 Add to MetaCart
(Show Context)
* Exclusion: At most one process executes its critical section at any time.
A Fast, Scalable Mutual Exclusion Algorithm
 Distributed Computing
, 1994
"... This paper is concerned with synchronization under read/write atomicity in shared memory multiprocessors. We present a new algorithm for Nprocess mutual exclusion that requires only read and write operations and that has O(log N) time complexity, where "time" is measured by counting remot ..."
Abstract

Cited by 58 (11 self)
 Add to MetaCart
(Show Context)
This paper is concerned with synchronization under read/write atomicity in shared memory multiprocessors. We present a new algorithm for Nprocess mutual exclusion that requires only read and write operations and that has O(log N) time complexity, where "time" is measured by counting remote memory references. The time complexity of this algorithm is better than that of all prior solutions to the mutual exclusion problem that are based upon atomic read and write instructions; in fact, the time complexity of most prior solutions is unbounded. Performance studies are presented that show that our mutual exclusion algorithm exhibits scalable performance under heavy contention. In fact, its performance rivals that of the fastest queuebased spin locks based on strong primitives such as compareandswap and fetchandadd. We also present a modified version of our algorithm that generates only O(1) memory references in the absence of contention. Keywords: Fast mutual exclusion, local spinning,...
Adaptive mutual exclusion with local spinning
 In Proceedings of the 14th International Symposium on Distributed Computing
, 2000
"... Abstract We present an adaptive algorithm for Nprocess mutual exclusion under read/write atomicity in which all busy waiting is by local spinning. In our algorithm, each process p performs O(k) remote memory references to enter and exit its critical section, where k is the maximum "point c ..."
Abstract

Cited by 49 (11 self)
 Add to MetaCart
(Show Context)
Abstract We present an adaptive algorithm for Nprocess mutual exclusion under read/write atomicity in which all busy waiting is by local spinning. In our algorithm, each process p performs O(k) remote memory references to enter and exit its critical section, where k is the maximum &quot;point contention &quot; experienced by p. The space complexity of our algorithm is \Theta (N), which is clearly optimal. Our algorithm is the first mutual exclusion algorithm under read/write atomicity that is adaptive when time complexity is measured by counting remote memory references. All previous socalled adaptive mutual exclusion algorithms employ busywaiting loops that can generate an unbounded number of remote memory references. Thus, they have unbounded time complexity under this measure.
An Improved Lower Bound for the Time Complexity of Mutual Exclusion (Extended Abstract)
 IN PROCEEDINGS OF THE 20TH ANNUAL ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING
, 2001
"... We establish a lower bound of 23 N= log log N) remote memory references for Nprocess mutual exclusion algorithms based on reads, writes, or comparison primitives such as testandset and compareand swap. Our bound improves an earlier lower bound of 32 log N= log log log N) established by Cyph ..."
Abstract

Cited by 45 (11 self)
 Add to MetaCart
(Show Context)
We establish a lower bound of 23 N= log log N) remote memory references for Nprocess mutual exclusion algorithms based on reads, writes, or comparison primitives such as testandset and compareand swap. Our bound improves an earlier lower bound of 32 log N= log log log N) established by Cypher. Our lower bound is of importance for two reasons. First, it almost matches the (log N) time complexity of the bestknown algorithms based on reads, writes, or comparison primitives. Second, our lower bound suggests that it is likely that, from an asymptotic standpoint, comparison primitives are no better than reads and writes when implementing localspin mutual exclusion algorithms. Thus, comparison primitives may not be the best choice to provide in hardware if one is interested in scalable synchronization.
A time complexity bound for adaptive mutual exclusion
 In Proceedings of the 15th International Symposium on Distributed Computing
, 2001
"... ..."
TimeAdaptive Algorithms for Synchronization
 SIAM J. Comput
, 1994
"... We consider concurrent systems in which there is an unknown upper bound on memory access time. Such a model is inherently different from asynchronous model where no such bound exists, and also from timingbased models where such a bound exists and is known a priori. The appeal of our model lies in t ..."
Abstract

Cited by 26 (6 self)
 Add to MetaCart
We consider concurrent systems in which there is an unknown upper bound on memory access time. Such a model is inherently different from asynchronous model where no such bound exists, and also from timingbased models where such a bound exists and is known a priori. The appeal of our model lies in the fact that while it abstracts from implementation details, it is a better approximation of real concurrent systems compared to the asynchronous model. Furthermore, it is stronger than the asynchronous model enabling us to design algorithms for problems that are unsolvable in the asynchronous model. Two basic synchronization problems, consensus and mutual exclusion, are investigated in a shared memory environment that supports atomic read/write registers. We show that \Theta(\Delta log \Delta log log \Delta ) is an upper and lower bound on the time complexity of consensus, where \Delta is the (unknown) upper bound on memory access time. For the mutual exclusion problem, we design an effic...
Nonatomic Mutual Exclusion with Local Spinning (Extended Abstract)
, 2002
"... We present an Nprocess localspin mutual exclusion algorithm, based on nonatomic reads and writes, in which each process performs \Theta (log N) remote memory references to enter and exit its critical section. This algorithm is derived from Yang and Anderson's atomic treebased localspin al ..."
Abstract

Cited by 17 (3 self)
 Add to MetaCart
We present an Nprocess localspin mutual exclusion algorithm, based on nonatomic reads and writes, in which each process performs \Theta (log N) remote memory references to enter and exit its critical section. This algorithm is derived from Yang and Anderson's atomic treebased localspin algorithm in a way that preserves its time complexity. No atomic read/write algorithm with better asymptotic worstcase time complexity (under the remotememoryreferences measure) is currently known. This suggests that atomic memory is not fundamentally required if one is interested in worstcase time complexity. The same cannot be said if one is interested in fastpath algorithms (in which contentionfree time complexity is required to be O(1)) or adaptive algorithms (in which time complexity is required to be proportional to the number of contending processes). We show that such algorithms fundamentally require memory accesses to be atomic. In particular, we show that for any Nprocess nonatomic algorithm, there exists a singleprocess execution in which the lone competing process executes \Omega (log N / log log N) remote operations to enter its critical section. Moreover, these operations must access \Omega (plog N / log log N) distinct variables, which implies that fast and adaptive algorithms are impossible even if caching techniques are used to avoid accessing the processorstomemory interconnection network.
Fast Timingbased Algorithms
 Distributed Computing
, 1996
"... Concurrent systems in which there is a known upper bound \Delta on memory access time are considered. Two prototypical synchronization problems, mutual exclusion and consensus, are studied and solutions that have constant (i.e. independent of \Delta and the total number of processes) time complexity ..."
Abstract

Cited by 16 (5 self)
 Add to MetaCart
(Show Context)
Concurrent systems in which there is a known upper bound \Delta on memory access time are considered. Two prototypical synchronization problems, mutual exclusion and consensus, are studied and solutions that have constant (i.e. independent of \Delta and the total number of processes) time complexity in the absence of contention are presented. For mutual exclusion, in the absence of contention, a process needs only five accesses to the shared memory to enter its critical section, and in the presence of contention, the winning process may need to delay itself for 4 \Delta \Delta time units. For consensus, in absence of contention, a process decides after four accesses to the shared memory, and in the presence of contention, it may need to delay itself for \Delta time units. 1 Introduction The possibility and complexity of synchronization in a distributed environment depends heavily on timing assumptions. In the asynchronous model no timing assumptions are made about the relative speeds ...
Long Lived Adaptive Splitter and Applications
, 1999
"... this paper we were able to define and implement a variant of the MoirAnderson splitter that does not have all the properties that their splitter has but on the other hand, has an adaptive and longlived implementation. Furthermore, we use this splitter as a building block in constructions other tha ..."
Abstract

Cited by 15 (1 self)
 Add to MetaCart
this paper we were able to define and implement a variant of the MoirAnderson splitter that does not have all the properties that their splitter has but on the other hand, has an adaptive and longlived implementation. Furthermore, we use this splitter as a building block in constructions other than a grid (for example a row of splitters or a tree of splitters) and in this way implement diverse applications such as mutual exclusion and optimal name space renaming
Fast Mutual Exclusion, Even With Contention
, 1993
"... We present a mutual exclusion algorithm that performs well both with and without contention, on machines with no atomic instructions other than read and write. The algorithm capitalizes on the ability of memory systems to read and write at both full and halfword granularities. It depends on pred ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
We present a mutual exclusion algorithm that performs well both with and without contention, on machines with no atomic instructions other than read and write. The algorithm capitalizes on the ability of memory systems to read and write at both full and halfword granularities. It depends on predictable processor execution rates, but requires no bound on the length of critical sections, performs only O(n) total references to shared memory when arbitrating among conflicting requests (rather than O(n ) in the general version of Lamport's fast mutual exclusion algorithm), and performs only 2 reads and 4 writes (a new lower bound) in the absence of contention. We provide a correctness proof.