Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Design Tradeoffs in Modern Software Transactional Memory Systems

Summary: Design Tradeoffs in Modern Software Transactional
Memory Systems
Virendra J. Marathe, William N. Scherer III, and Michael L. Scott
Department of Computer Science
University of Rochester
Rochester, NY 14627-0226
{vmarathe, scherer, scott}@cs.rochester.edu
Abstract. Software Transactional Memory (STM) is a generic nonblocking syn-
chronization construct that enables automatic conversion of correct sequential
objects into correct concurrent objects. Because it is nonblocking, STM avoids
traditional performance and correctness problems due to thread failure, preemp-
tion, page faults, and priority inversion.
In this paper we compare and analyze two recent object-based STM systems, the
DSTM of Herlihy et al. and the FSTM of Fraser, both of which support dynamic
transactions, in which the set of objects to be modified is not known in advance.
We highlight aspects of these systems that lead to performance tradeoffs for var-
ious concurrent data structures. More specifically, we consider object ownership
acquisition semantics, concurrent object referencing style, the overhead of or-
dering and bookkeeping, contention management versus helping semantics, and
transaction validation. We demonstrate, for each system, simple benchmarks on


Source: Agrawal, Gagan - Department of Computer Science and Engineering, Ohio State University


Collections: Computer Technologies and Information Sciences