---
_id: '2181'
abstract:
- lang: eng
  text: 'There is a trade-off between performance and correctness in implementing
    concurrent data structures. Better performance may be achieved at the expense
    of relaxing correctness, by redefining the semantics of data structures. We address
    such a redefinition of data structure semantics and present a systematic and formal
    framework for obtaining new data structures by quantitatively relaxing existing
    ones. We view a data structure as a sequential specification S containing all
    &quot;legal&quot; sequences over an alphabet of method calls. Relaxing the data
    structure corresponds to defining a distance from any sequence over the alphabet
    to the sequential specification: the k-relaxed sequential specification contains
    all sequences over the alphabet within distance k from the original specification.
    In contrast to other existing work, our relaxations are semantic (distance in
    terms of data structure states). As an instantiation of our framework, we present
    two simple yet generic relaxation schemes, called out-of-order and stuttering
    relaxation, along with several ways of computing distances. We show that the out-of-order
    relaxation, when further instantiated to stacks, queues, and priority queues,
    amounts to tolerating bounded out-of-order behavior, which cannot be captured
    by a purely syntactic relaxation (distance in terms of sequence manipulation,
    e.g. edit distance). We give concurrent implementations of relaxed data structures
    and demonstrate that bounded relaxations provide the means for trading correctness
    for performance in a controlled way. The relaxations are monotonic which further
    highlights the trade-off: increasing k increases the number of permitted sequences,
    which as we demonstrate can lead to better performance. Finally, since a relaxed
    stack or queue also implements a pool, we actually have new concurrent pool implementations
    that outperform the state-of-the-art ones.'
acknowledgement: ' and an Elise Richter Fellowship (Austrian Science Fund V00125). '
author:
- first_name: Thomas A
  full_name: Henzinger, Thomas A
  id: 40876CD8-F248-11E8-B48F-1D18A9856A87
  last_name: Henzinger
  orcid: 0000−0002−2985−7724
- first_name: Christoph
  full_name: Kirsch, Christoph
  last_name: Kirsch
- first_name: Hannes
  full_name: Payer, Hannes
  last_name: Payer
- first_name: Ali
  full_name: Sezgin, Ali
  id: 4C7638DA-F248-11E8-B48F-1D18A9856A87
  last_name: Sezgin
- first_name: Ana
  full_name: Sokolova, Ana
  last_name: Sokolova
citation:
  ama: 'Henzinger TA, Kirsch C, Payer H, Sezgin A, Sokolova A. Quantitative relaxation
    of concurrent data structures. In: <i>Proceedings of the 40th Annual ACM SIGPLAN-SIGACT
    Symposium on Principles of Programming Language</i>. ACM; 2013:317-328. doi:<a
    href="https://doi.org/10.1145/2429069.2429109">10.1145/2429069.2429109</a>'
  apa: 'Henzinger, T. A., Kirsch, C., Payer, H., Sezgin, A., &#38; Sokolova, A. (2013).
    Quantitative relaxation of concurrent data structures. In <i>Proceedings of the
    40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming language</i>
    (pp. 317–328). Rome, Italy: ACM. <a href="https://doi.org/10.1145/2429069.2429109">https://doi.org/10.1145/2429069.2429109</a>'
  chicago: Henzinger, Thomas A, Christoph Kirsch, Hannes Payer, Ali Sezgin, and Ana
    Sokolova. “Quantitative Relaxation of Concurrent Data Structures.” In <i>Proceedings
    of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Language</i>,
    317–28. ACM, 2013. <a href="https://doi.org/10.1145/2429069.2429109">https://doi.org/10.1145/2429069.2429109</a>.
  ieee: T. A. Henzinger, C. Kirsch, H. Payer, A. Sezgin, and A. Sokolova, “Quantitative
    relaxation of concurrent data structures,” in <i>Proceedings of the 40th annual
    ACM SIGPLAN-SIGACT symposium on Principles of programming language</i>, Rome,
    Italy, 2013, pp. 317–328.
  ista: 'Henzinger TA, Kirsch C, Payer H, Sezgin A, Sokolova A. 2013. Quantitative
    relaxation of concurrent data structures. Proceedings of the 40th annual ACM SIGPLAN-SIGACT
    symposium on Principles of programming language. POPL: Principles of Programming
    Languages, 317–328.'
  mla: Henzinger, Thomas A., et al. “Quantitative Relaxation of Concurrent Data Structures.”
    <i>Proceedings of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of
    Programming Language</i>, ACM, 2013, pp. 317–28, doi:<a href="https://doi.org/10.1145/2429069.2429109">10.1145/2429069.2429109</a>.
  short: T.A. Henzinger, C. Kirsch, H. Payer, A. Sezgin, A. Sokolova, in:, Proceedings
    of the 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Language,
    ACM, 2013, pp. 317–328.
conference:
  end_date: 2013-01-25
  location: Rome, Italy
  name: 'POPL: Principles of Programming Languages'
  start_date: 2013-01-23
date_created: 2018-12-11T11:56:11Z
date_published: 2013-01-01T00:00:00Z
date_updated: 2023-02-21T16:06:49Z
day: '01'
ddc:
- '000'
- '004'
department:
- _id: ToHe
doi: 10.1145/2429069.2429109
ec_funded: 1
file:
- access_level: open_access
  checksum: adf465e70948f4e80e48057524516456
  content_type: application/pdf
  creator: system
  date_created: 2018-12-12T10:14:33Z
  date_updated: 2020-07-14T12:45:31Z
  file_id: '5086'
  file_name: IST-2014-198-v1+1_popl128-henzinger-clean.pdf
  file_size: 294689
  relation: main_file
file_date_updated: 2020-07-14T12:45:31Z
has_accepted_license: '1'
language:
- iso: eng
month: '01'
oa: 1
oa_version: Submitted Version
page: 317 - 328
project:
- _id: 25EE3708-B435-11E9-9278-68D0E5697425
  call_identifier: FP7
  grant_number: '267989'
  name: Quantitative Reactive Modeling
- _id: 25F5A88A-B435-11E9-9278-68D0E5697425
  call_identifier: FWF
  grant_number: S11402-N23
  name: Moderne Concurrency Paradigms
publication: Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles
  of programming language
publication_identifier:
  isbn:
  - 978-1-4503-1832-7
publication_status: published
publisher: ACM
publist_id: '4801'
pubrep_id: '198'
quality_controlled: '1'
related_material:
  record:
  - id: '10901'
    relation: later_version
    status: deleted
scopus_import: 1
status: public
title: Quantitative relaxation of concurrent data structures
type: conference
user_id: 2DF688A6-F248-11E8-B48F-1D18A9856A87
year: '2013'
...
