Summary: Cooperative Sharing and Asynchronous Consensus using
SingleReader SingleWriter Registers
Yonatan Aumann \Lambda Avivit KapahLevy y
We consider the problem of asynchronous consensus in the shared memory setting with single
reader/singlewriter registers. This setting can also be viewed as a messagepassing setting where
there are no delays or failures of links. We provide a consensus procedure that completes in
O(n log n exp(2
ln n ln(c log n log \Lambda n))) expected total work, for some constant c, assuming the
value oblivious adversary scheduler. In particular, the total work is less than O(n 1+ffl ) for any ffl.
Total work is defined as the total number of operations performed by all processors collectively,
including busywaiting. The solution is based on a new algorithm for a primitive which we call
cooperativesharing. In the cooperativesharing primitive, initially each processor has a private
value and the outcome is that there is at least one input value which becomes known to all
processors. We provide a new algorithm for the cooperative sharing in the singlereader/single
writer setting which completes in O(n exp(2
ln n ln(c log n log \Lambda n))) work.