Lower bounds on the amortized time complexity of shared objects

Hagit Attiya, Arie Fouren

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

The amortized step complexity of an implementation measures its performance as a whole, rather than the performance of individual operations. Specifically, the amortized step complexity of an implementation is the average number of steps performed by invoked operations, in the worst case, taken over all possible executions. The amortized step complexity of a wide range of known lockfree implementations for shared data structures, like stacks, queues, linked lists, doubly-linked lists and binary trees, includes an additive factor linear in the point contention-the number of processes simultaneously active in the execution. This paper shows that an additive factor, linear in the point contention, is inherent in the amortized step complexity for lock-free implementations of many distributed data structures, including stacks, queues, heaps, linked lists and search trees.

Original languageEnglish
Title of host publication21st International Conference on Principles of Distributed Systems, OPODIS 2017
EditorsJames Aspnes, Joao Leitao, Alysson Bessani, Pascal Felber
ISBN (Electronic)9783959770613
DOIs
StatePublished - 1 Mar 2018
Event21st International Conference on Principles of Distributed Systems, OPODIS 2017 - Lisboa, Portugal
Duration: 18 Dec 201720 Dec 2017

Publication series

NameLeibniz International Proceedings in Informatics, LIPIcs
Volume95

Conference

Conference21st International Conference on Principles of Distributed Systems, OPODIS 2017
Country/TerritoryPortugal
CityLisboa
Period18/12/1720/12/17

Keywords

  • Monotone objects
  • Remote memory references
  • Stacks and queues
  • Step complexity
  • Trees

All Science Journal Classification (ASJC) codes

  • Software

Cite this