SMV: selective multi-versioning STM

  • Authors:
  • Dmitri Perelman;Anton Byshevsky;Oleg Litmanovich;Idit Keidar

  • Affiliations:
  • Technion, Israel Institute of Technology;Technion, Israel Institute of Technology;Technion, Israel Institute of Technology;Technion, Israel Institute of Technology

  • Venue:
  • DISC'11 Proceedings of the 25th international conference on Distributed computing
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present Selective Multi-Versioning (SMV), a new STM that reduces the number of aborts, especially those of long read-only transactions. SMV keeps old object versions as long as they might be useful for some transaction to read. It is able to do so while still allowing reading transactions to be invisible by relying on automatic garbage collection to dispose of obsolete versions. SMV is most suitable for read-dominated workloads, for which it performs better than previous solutions. It has an up to ×7 throughput improvement over a single-version STMand more than a two-fold improvement over an STMkeeping a constant number of versions per object. We show that the memory consumption of algorithms keeping a constant number of versions per object might grow exponentially with the number of objects, while SMV operates successfully even in systems with stringent memory constraints.