Using Nesting to Push the Limits of Transactional Data Structure Libraries

Gal Assa, Hagar Meir, Guy Golan-Gueta, Idit Keidar, Alexander Spiegelman

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

Abstract

Transactional data structure libraries (TDSL) combine the ease-of-programming of transactions with the high performance and scalability of custom-tailored concurrent data structures. They can be very efficient thanks to their ability to exploit data structure semantics in order to reduce overhead, aborts, and wasted work compared to general-purpose software transactional memory. However, TDSLs were not previously used for complex use-cases involving long transactions and a variety of data structures. In this paper, we boost the performance and usability of a TDSL, towards allowing it to support complex applications. A key idea is nesting. Nested transactions create checkpoints within a longer transaction, so as to limit the scope of abort, without changing the semantics of the original transaction. We build a Java TDSL with built-in support for nested transactions over a number of data structures. We conduct a case study of a complex network intrusion detection system that invests a significant amount of work to process each packet. Our study shows that our library outperforms publicly available STMs twofold without nesting, and by up to 16x when nesting is used.

Original languageEnglish
Title of host publication25th International Conference on Principles of Distributed Systems, OPODIS 2021
EditorsQuentin Bramas, Vincent Gramoli, Alessia Milani
ISBN (Electronic)9783959772198
DOIs
StatePublished - 2021
Event25th International Conference on Principles of Distributed Systems, OPODIS 2021 - Strasbourg, France
Duration: 13 Dec 202115 Dec 2021

Publication series

NameLeibniz International Proceedings in Informatics, LIPIcs
Volume217

Conference

Conference25th International Conference on Principles of Distributed Systems, OPODIS 2021
Country/TerritoryFrance
CityStrasbourg
Period13/12/2115/12/21

Keywords

  • Nesting
  • Transactional Libraries

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Using Nesting to Push the Limits of Transactional Data Structure Libraries'. Together they form a unique fingerprint.

Cite this