Layout lock: A scalable locking paradigm for concurrent data layout modifications

Nachshon Cohen, Arie Tal, Erez Petrank

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

Abstract

Data-structures can benefit from dynamic data layout modifications when the size or the shape of the data structure changes during the execution, or when different phases in the program execute different workloads. However, in a modern multi-core environment, layout modifications involve costly synchronization overhead. In this paper we propose a novel layout lock that incurs a negligible overhead for reads and a small overhead for updates of the data structure. We then demonstrate the benefits of layout changes and also the advantages of the layout lock as its supporting synchronization mechanism for two data structures. In particular, we propose a concurrent binary search tree, and a concurrent array set, that benefit from concurrent layout modifications using the proposed layout lock. Experience demonstrates performance advantages and integration simplicity.

Original languageEnglish
Title of host publicationPPoPP 2017 - Proceedings of the 22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
Pages17-29
Number of pages13
ISBN (Electronic)9781450344937
DOIs
StatePublished - 26 Jan 2017
Event22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2017 - Austin, United States
Duration: 4 Feb 20178 Feb 2017

Publication series

NameProceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP

Conference

Conference22nd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2017
Country/TerritoryUnited States
CityAustin
Period4/02/178/02/17

Keywords

  • Concurrent data structures
  • Data layout
  • Synchronization

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Layout lock: A scalable locking paradigm for concurrent data layout modifications'. Together they form a unique fingerprint.

Cite this