Passer à la navigation principale Passer à la recherche Passer au contenu principal

Order out of chaos: Proving linearizability using local views

  • Yotam M.Y. Feldman
  • , Constantin Enea
  • , Adam Morrison
  • , Noam Rinetzky
  • , Sharon Shoham
  • Tel Aviv University
  • Université Paris 7

Résultats de recherche: Le chapitre dans un livre, un rapport, une anthologie ou une collectionContribution à une conférenceRevue par des pairs

Résumé

Proving the linearizability of highly concurrent data structures, such as those using optimistic concurrency control, is a challenging task. The main difficulty is in reasoning about the view of the memory obtained by the threads, because as they execute, threads observe different fragments of memory from different points in time. Until today, every linearizability proof has tackled this challenge from scratch. We present a unifying proof argument for the correctness of unsynchronized traversals, and apply it to prove the linearizability of several highly concurrent search data structures, including an optimistic self-balancing binary search tree, the Lazy List and a lock-free skip list. Our framework harnesses sequential reasoning about the view of a thread, considering the thread as if it traverses the data structure without interference from other operations. Our key contribution is showing that properties of reachability along search paths can be deduced for concurrent traversals from such interference-free traversals, when certain intuitive conditions are met. Basing the correctness of traversals on such local view arguments greatly simplifies linearizability proofs. At the heart of our result lies a notion of order on the memory, corresponding to the order in which locations in memory are read by the threads, which guarantees a certain notion of consistency between the view of the thread and the actual memory. To apply our framework, the user proves that the data structure satisfies two conditions: (1) acyclicity of the order on memory, even when it is considered across intermediate memory states, and (2) preservation of search paths to locations modified by interfering writes. Establishing the conditions, as well as the full linearizability proof utilizing our proof argument, reduces to simple concurrent reasoning. The result is a clear and comprehensible correctness proof, and elucidates common patterns underlying several existing data structures.

langue originaleAnglais
titre32nd International Symposium on Distributed Computing, DISC 2018
rédacteurs en chefUlrich Schmid, Josef Widder
EditeurSchloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
ISBN (Electronique)9783959770927
Les DOIs
étatPublié - 1 oct. 2018
Modification externeOui
Evénement32nd International Symposium on Distributed Computing, DISC 2018 - New Orleans, États-Unis
Durée: 15 oct. 201819 oct. 2018

Série de publications

NomLeibniz International Proceedings in Informatics, LIPIcs
Volume121
ISSN (imprimé)1868-8969

Une conférence

Une conférence32nd International Symposium on Distributed Computing, DISC 2018
Pays/TerritoireÉtats-Unis
La villeNew Orleans
période15/10/1819/10/18

Empreinte digitale

Examiner les sujets de recherche de « Order out of chaos: Proving linearizability using local views ». Ensemble, ils forment une empreinte digitale unique.

Contient cette citation