Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Conferences, Workshops, Symposiums, and Seminars
  4. Synchronizing without Locks is Inherently Expensive
 
conference paper

Synchronizing without Locks is Inherently Expensive

Attiya, Hagit
•
Guerraoui, Rachid  
•
Hendler, Danny
Show more
2006
Proceedings of the 25th ACM Symposium on Principles of Distributed Computing (PODC'06)
25th ACM Symposium on Principles of Distributed Computing (PODC'06)

It has been considered bon ton to blame locks for their fragility, especially since researchers identified obstruction-freedom: a progress condition that precludes locking while being weak enough to raise the hope for good performance. This paper attenuates this hope by establishing lower bounds on the complexity of obstructionfree implementations in contention-free executions: those where obstruction-freedom was precisely claimed to be effective. Through our lower bounds, we argue for an inherent cost of concurrent computing without locks. We first prove that obstruction-free implementations of a large class of objects, using only overwriting or trivial primitives in contention-free executions, have ­Omega(n) space complexity and ­Omega(log^2 n) (obstruction-free) step complexity. These bounds apply to implementations of many popular objects, including variants of fetch&add, counter, compare&swap, and LL/SC. When arbitrary primitives can be applied in contention-free executions, we show that, in any implementation of binary consensus, or any perturbable object, the number of distinct base objects accessed and memory stalls incurred by some process in a contention free execution is ­Omega(sqrt{n}). All these results hold regardless of the behavior of processes after they become aware of contention. We also prove that, in any obstruction-free implementation of a perturbable object in which processes are not allowed to fail their operations, the number of memory stalls incurred by some process that is unaware of contention is ­Omega(n).

  • Files
  • Details
  • Metrics
Type
conference paper
DOI
10.1145/1146381.1146427
Author(s)
Attiya, Hagit
Guerraoui, Rachid  
Hendler, Danny
Kouznetsov, Petr  
Date Issued

2006

Published in
Proceedings of the 25th ACM Symposium on Principles of Distributed Computing (PODC'06)
Start page

300

End page

307

Subjects

lock-free implementations

•

obstruction-freedom

•

perturbable objects

•

step contention

•

memory contention

•

lower bound

Editorial or Peer reviewed

REVIEWED

Written at

OTHER

EPFL units
DCL  
Event nameEvent placeEvent date
25th ACM Symposium on Principles of Distributed Computing (PODC'06)

Denver, Colorado, USA

July 23-26, 2006

Available on Infoscience
May 19, 2006
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/230169
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés