English

Progressive Transactional Memory in Time and Space

Distributed, Parallel, and Cluster Computing 2015-11-16 v2

Abstract

Transactional memory (TM) allows concurrent processes to organize sequences of operations on shared \emph{data items} into atomic transactions. A transaction may commit, in which case it appears to have executed sequentially or it may \emph{abort}, in which case no data item is updated. The TM programming paradigm emerged as an alternative to conventional fine-grained locking techniques, offering ease of programming and compositionality. Though typically themselves implemented using locks, TMs hide the inherent issues of lock-based synchronization behind a nice transactional programming interface. In this paper, we explore inherent time and space complexity of lock-based TMs, with a focus of the most popular class of \emph{progressive} lock-based TMs. We derive that a progressive TM might enforce a read-only transaction to perform a quadratic (in the number of the data items it reads) number of steps and access a linear number of distinct memory locations, closing the question of inherent cost of \emph{read validation} in TMs. We then show that the total number of \emph{remote memory references} (RMRs) that take place in an execution of a progressive TM in which nn concurrent processes perform transactions on a single data item might reach Ω(nlogn)\Omega(n \log n), which appears to be the first RMR complexity lower bound for transactional memory.

Keywords

Cite

@article{arxiv.1502.04908,
  title  = {Progressive Transactional Memory in Time and Space},
  author = {Petr Kuznetsov and Srivatsan Ravi},
  journal= {arXiv preprint arXiv:1502.04908},
  year   = {2015}
}

Comments

Model of Transactional Memory identical with arXiv:1407.6876, arXiv:1502.02725

R2 v1 2026-06-22T08:31:25.320Z