A counting protocol (mod m) consists of shared memory bits - referred to as the counter - and of a procedure for incrementing the counter value by 1 (mod m). The procedure may be executed by many processes concurrently. It is required to satisfy a very weak correctness requirement, namely: the counter is required to show a correct value only in quiescent states ‐ states in which no process is incrementing the counter. Special cases of counting protocols are “counting networks” [AHS91] and “concurrent counters” [MTY92]. We consider the problem of implementing a wait-free counting protocol, assuming that the basic atomic operation of a process is a read-modify-write on a single bit. Let flip(Pr) be the maximum number of times a single increment operation changes the counter bits in a counting protocol Pr. Our main result is: In any wait-free counting
[1]
Maurice Herlihy,et al.
Low contention load balancing on large-scale multiprocessors
,
1992,
SPAA '92.
[2]
Hagit Attiya,et al.
Counting networks with arbitrary fan-out
,
1992,
SODA '92.
[3]
Maurice Herlihy,et al.
Counting networks and multi-processor coordination
,
1991,
STOC '91.
[4]
Maurice Herlihy,et al.
Low contention linearizable counting
,
1991,
[1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.
[5]
C. Greg Plaxton,et al.
Small-depth counting networks
,
1992,
STOC '92.