Reducing false aborts in STM systems

  • Authors:
  • Daniel Nicácio;Guido Araújo

  • Affiliations:
  • Institute of Computing, UNICAMP;Institute of Computing, UNICAMP

  • Venue:
  • ICA3PP'10 Proceedings of the 10th international conference on Algorithms and Architectures for Parallel Processing - Volume Part I
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Transactional memory (TM) continues to be the most promising approach replacing locks in concurrent programming, but TM systems based on software (STM) still lack the desired performance when compared to fine-grained lock implementations It is known that the critical operation in TM systems is to ensure the atomicity and isolation of concurrently executing threads This task is known as the read/write-set validation In attempt to make this process as fast as possible, STM systems usually use ownership tables to perform conflict detection, but this approach generates false positive occurrences, which result in false aborts This paper shows the real impact of false aborts and how its relevance increases along with the number of concurrent threads, showing it is an essential factor for TM systems We propose two different techniques to avoid false aborts, showing its benefits and limitations The first is a collision list attached to the existing hash table The second is a full associative memory mapping between the addresses and its version information We achieved significant performance improvements in some STAMP benchmark programs, resulting in speedups up to 1.5x We also show that speedups become higher when the number of parallel threads increases.