דניאל הנדלר

אקדמי בכיר

Time and space lower bounds for implementations using k-cAS

Hagit Attiya, Danny Hendler

This paper presents lower bounds on the time and space complexity of implementations that use k-compare&swap (k-CAS) synchronization primitives. We prove that using k-CAS primitives can improve neither the time nor the space complexity of implementations of widely used concurrent objects, such as counter, stack, queue, and collect. Surprisingly, overly restrictive use of k-CAS may even increase the space complexity required by such implementations. We prove a lower bound of Ω (log2n) on the round complexity of implementations of a collect object using read, write, and k-CAS, for any k, where n is the number of processes in the system. There is an implementation of collect with O(log2n) round complexity that uses only reads and writes. Thus, our lower bound establishes that k-CAS is no stronger than read and write for collect implementation round complexity. For k-CAS operations that return the values of all the objects they access, we prove that the total step complexity of implementing key objects such as counters, stacks, and queues is Ω (n logkn). We also prove that k-CAS cannot improve the space complexity of implementing many objects (including counter, stack, queue, and single-writer snapshot). An implementation has to use at least n base objects even if k-CAS is allowed, and if all operations (other than read) swap exactly k base objects, then it must use at least k ̇ n base objects.

שפת פרסום אנגלית
דפים 162-173
כתב עת IEEE Transactions on Parallel and Distributed Systems
כרך 21
נושא מספר 2
סטטוס פרסום פורסם - 01.02.2010
4815228

Keywords

Collect
Compare&swap (CAS)
Conditional synchronization primitives
Counter
K-compare&swap (k-CAS)
Queue
Round complexity
Stack

ASJC Scopus subject areas

Signal Processing
Hardware and Architecture
Computational Theory and Mathematics
גישה למסמך
10.1109/TPDS.2009.60
קבצים וקישורים אחרים
Link to publication in Scopus