ABSTRACT
This paper introduces operation-valency, a generalization of the valency proof technique originated by Fischer, Lynch, and Paterson. By focusing on critical events that influence the return values of individual operations rather then on critical events that influence a protocol's single return value, the new technique allows us to derive a collection of realistic lower bounds for lock-free implementations of concurrent objects such as linearizable queues, stacks, sets, hash tables, shared counters, approximate agreement, and more. By realistic we mean that they follow the real-world model introduced by Dwork, Herlihy, and Waarts, counting both memory-references and memory-stalls due to contention, and that they allow the combined use of read, write, and read-modify-write operations available on current machines.By using the operation-valency technique, we derive an Ω(√n) non-cached shared memory accesses lower bound on the worst-case time complexity of lock-free implementations of objects in Influence(n), a wide class of concurrent objects including all of those mentioned above, in which an individual operation can be influenced by all others.We also prove the existence of a fundamental relationship between the space complexity, latency, contention, and "influence level" of any lock-free object implementation. Our results are broad in that they hold for implementations combining read/write memory and any collection of read-modify-write operations, and in that they apply even if shared memory words have unbounded size.
- Anderson and Yang. Time/contention trade-offs for multiprocessor synchronization. INFCTRL: Information and Computation (formerly Information and Control), 124, 1996. Google ScholarDigital Library
- J. Anderson and Y. Kim. An improved lower bound for the time complexity of mutual exclusion, 2001. Google ScholarDigital Library
- C. Busch, N. Hardavellas, and M. Mavronicolas. Contention in counting networks. In Symposium on Principles of Distributed Computing, page 404, 1994. Google ScholarDigital Library
- C. Busch and M. Mavronicolas. An efficient counting network. In Proceedings of the 1st Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing (IPPS/SPDP'98), pages 380--385, 1998. Google ScholarDigital Library
- B. Chor, A. Israeli, and M. Li. On processor coordination using asynchronous hardware. In Proceedings of the 6th ACM Symposium on Principles of Distributed Computing (PODC), pages 86--97, New York, NY, 1987. ACM Press. Google ScholarDigital Library
- R. Cypher. The communication requirements of mutual exclusion. In ACM Proceedings of the Seventh Annual Symposium on Parallel Algorithms and Architectures, pages 147--156, 1995. Google ScholarDigital Library
- C. Dwork, M. Herlihy, and O. Waarts. Contention in shared memory algorithms. Journal of the ACM (JACM), 44(6):779--805, 1997. Google ScholarDigital Library
- F. E. Fich and E. Ruppert. Lower bounds in distributed computing. In International Symposium on Distributed Computing, pages 1--28, 2000. Google ScholarDigital Library
- M. J. Fischer, N. A. Lynch, and M. S. Paterson. Impossibility of distributed consensus with one faulty process. Journal of the ACM, 32(2):374--382, April 1985. Google ScholarDigital Library
- M. Herlihy. Wait-free synchronization. ACM Transactions On Programming Languages and Systems, 13(1):123--149, Jan. 1991. Google ScholarDigital Library
- M. Herlihy. Wait-free synchronization. ACM Transactions on Programming Languages and Systems, 13(1):124--149, January 1991. Google ScholarDigital Library
- M. Herlihy, N. Shavit, and O. Waarts. Linearizable counting networks. Distributed Computing, 9(4):193--203, April 1996. Google ScholarDigital Library
- P. Jayanti. A time complexity lower bound for randomized implementations of some shared objects. In Symposium on Principles of Distributed Computing, pages 201--210, 1998. Google ScholarDigital Library
- M. C. Loui and H. H. Abu.-Amara. Memory requirements for agreement among unreliable asynchronous processes. Advances in Computing Research, 4:163--183, 1987.Google Scholar
- N. Lynch. A hundred impossibility proofs for distributed computing. In Proceedings of the 8th ACM Symposium on Principles of Distributed Computing (PODC), pages 1--28, New York, NY, 1989. ACM Press. Google ScholarDigital Library
- M. Merrit and G. Taubenfeld. Knowledge in shared memory systems. In ACM Symp. on Principles of Distributed Computing, pages 189--200, 1991. Google ScholarDigital Library
Index Terms
- Operation-valency and the cost of coordination
Recommendations
Solo-valency and the cost of coordination
This paper introduces solo-valency, a variation on the valency proof technique originated by Fischer, Lynch, and Paterson. The new technique focuses on critical events that influence the responses of solo runs by individual operations, rather than on ...
Operation-Level Wait-Free Transactional Memory with Support for Irrevocable Operations
Transactional memory (TM) aims to be a general purpose concurrency mechanism. However, operations which cause side-effects cannot be easily managed by a TM system, in which transactions are executed optimistically. In particular, networking, I/O, and some ...
The Cost of Privatization in Software Transactional Memory
Software transactional memory (STM) is a promising approach for programming concurrent applications; STM guarantees that a transaction, consisting of a sequence of operations on the memory, appears to execute atomically. In practice, however, it is ...
Comments