Transactional data structure libraries

Alexander Spiegelman, Guy Golan-Gueta, Idit Keidar

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

Abstract

We introduce transactions into libraries of concurrent data structures; such transactions can be used to ensure atomicity of sequences of data structure operations. By focusing on transactional access to a well-defined set of data structure operations, we strike a balance between the ease-ofprogramming of transactions and the efficiency of customtailored data structures. We exemplify this concept by designing and implementing a library supporting transactions on any number of maps, sets (implemented as skiplists), and queues. Our library offers efficient and scalable transactions, which are an order of magnitude faster than state-of-theart transactional memory toolkits. Moreover, our approach treats stand-alone data structure operations (like put and enqueue) as first class citizens, and allows them to execute with virtually no overhead, at the speed of the original data structure library.

Original languageEnglish
Title of host publicationPLDI 2016 - Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation
EditorsChandra Krintz, Emery Berger
Pages682-696
Number of pages15
ISBN (Electronic)9781450342612
DOIs
StatePublished - 2 Jun 2016
Event37th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2016 - Santa Barbara, United States
Duration: 13 Jun 201617 Jun 2016

Publication series

NameProceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)
Volume13-17-June-2016

Conference

Conference37th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2016
Country/TerritoryUnited States
CitySanta Barbara
Period13/06/1617/06/16

Keywords

  • Concurrency
  • Data structures
  • Semantics
  • Transactions

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Transactional data structure libraries'. Together they form a unique fingerprint.

Cite this