A Speculation-Friendly Binary Search Tree - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports (Research Report) Year : 2011

A Speculation-Friendly Binary Search Tree


We introduce the first binary search tree algorithm designed for speculative executions. Prior to this work, tree structures were mainly designed for their pessimistic (non-speculative) accesses to have a bounded complexity. Researchers tried to evaluate transactional memory using such tree structures whose prominent example is the red-black tree library developed by Oracle Labs that is part of multiple benchmark distributions. Although well-engineered, such structures remain badly suited for speculative accesses, whose step complexity might raise dramatically with contention. We show that our speculation-friendly tree outperforms the existing transaction-based version of the AVL and the red-black trees. Its key novelty stems from the decoupling of update operations: they are split into one transaction that modifies the abstraction state and multiple ones that restructure its tree implementation in the background. In particular, the speculation-friendly tree is shown correct, reusable and it speeds up a transaction-based travel reservation application by up to 3:5 .
Fichier principal
Vignette du fichier
PI-1984-v2.pdf (604.14 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

inria-00618995 , version 1 (05-09-2011)
inria-00618995 , version 2 (05-03-2012)


  • HAL Id : inria-00618995 , version 2


Tyler Crain, Vincent Gramoli, Michel Raynal. A Speculation-Friendly Binary Search Tree. [Research Report] PI-1984, 2011, pp.21. ⟨inria-00618995v2⟩
6093 View
2718 Download


Gmail Facebook Twitter LinkedIn More