• Cite Icon123
  • https://doi.org/10.1145/1400751.1400769Copy DOI Icon

CAR-STM

  • Aug 18, 2008
  • Shlomi Dolev +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

Transactional memory (TM) is a key concurrent programming abstraction. Several software-based transactional memory (STM) implementations have been developed in recent years. All STM implementations must guarantee transaction atomicity but different STM implementations may provide different progress guarantees. In order to ensure progress, an STM implementation must resolve transaction conflicts. This is done either by the implementation itself or by delegating conflict resolution to a separate contention manager module that tries to resolve transaction collisions once they are detected.We present CAR-STM, a scheduling-based mechanism for STM Collision Avoidance and Resolution, that can be incorporated into existing STM implementations. CAR-STM maintains per-core transaction queues and schedules a thread while it is performing a transaction. CAR-STM employs the following two novel collision reduction techniques: (1) seriailizing contention managers resolve conflicts by aborting one transaction and moving it to the transactions queue of the other, effectively serializing the execution of these transactions and ensuring they will not collide again. (2) Proactive collision reduction allows applications to provide information about transactions' collision-probability. CAR-STM uses this information to pre-assign transactions that are more likely to collide to the same core.We have incorporated CAR-STM into the University of Rochester's STM (RSTM) and compared the performance of the new implementation with that of the original RSTM by using STMBench7. Our results show that the new implementation provides orders-of-magnitude reduction of execution times and improved throughput for almost all concurrency levels. Additionally, since CAR-STM greatly reduces the unpredictable influence of operating-system scheduling on STM performance, the new implementation provides a much more stable performance. In contrast, the performance of the original RSTM implementation on STMBench7 workloads exhibits extremely high variance. Though our paper focuses on software transactional memory, we believe the ideas introduced by CAR-STM may prove useful also for hybrid implementations of transactional memory.

Similar Papers
  • Research Article

On the energy and performance of commodity hardware transactional memory

  • Jun 16, 2014
  • ACM SIGMETRICS Performance Evaluation Review
  • Nuno Diegues +2
  • Conference Article
  • Citations12

StealthTest: Low Overhead Online Software Testing Using Transactional Memory

  • Sep 01, 2009
  • Jayaram Bobba +4
  • Research Article
  • Citations36

A comprehensive strategy for contention management in software transactional memory

  • Feb 14, 2009
  • ACM SIGPLAN Notices
  • Michael F Spear +3
  • Book Chapter
  • Citations5

Lightweight Identification of Captured Memory for Software Transactional Memory

  • Jan 01, 2013
  • Fernando Miguel Carvalho +1
  • Conference Article
  • Citations207

Evaluation of Blue Gene/Q hardware support for transactional memories

  • Sep 19, 2012
  • Amy Wang +7
  • Research Article
  • Citations1

What Scalable Programs Need from Transactional Memory

  • Apr 04, 2017
  • ACM SIGPLAN Notices
  • Donald Nguyen +1
  • Conference Article
  • Citations25

Real-Time Support for Software Transactional Memory

  • Aug 01, 2009
  • Toufik Sarni +2
  • Conference Article
  • Citations2

DAdHTM: Low overhead dynamically adaptive hardware transactional memory for large graphs a scalability study

  • Aug 01, 2017
  • Mohammad Qayum +2
  • Research Article

ReduxSTM: Optimizing STM designs for Irregular Applications

  • May 03, 2017
  • Journal of Parallel and Distributed Computing
  • Manuel Pedrero +3
  • Book Chapter
  • Citations995

Transactional Locking II

  • Jan 01, 2006
  • Dave Dice +2
  • PDF
  • Dissertation

Techniques for improving the performance of software transactional memory

  • Jul 21, 2014
  • Srđan Stipić
  • Dissertation

Enhancing the efficiency and practicality of software transactional memory on massively multithreaded systems

  • Mar 22, 2013
  • Gökçen Kestor
  • Conference Article
  • Citations2

Handling Conflicts with Compiler's Help in Software Transactional Memory Systems

  • Sep 01, 2010
  • Sandya Mannarswamy +1
  • Research Article
  • Citations18

Quantitative comparison of hardware transactional memory for Blue Gene/Q, zEnterprise EC12, Intel Core, and POWER8

  • Jun 13, 2015
  • ACM SIGARCH Computer Architecture News
  • Takuya Nakaike +4
  • Conference Article
  • Citations5

DeTrans: Deterministic and Parallel execution of Transactions

  • Oct 01, 2014
  • Vesna Smiljkovic +5
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.