Testing patterns for software transactional memory engines

  • Authors:
  • João Lourenço;Gonçalo Cunha

  • Affiliations:
  • Universidade Nova de Lisboa, Portugal;Universidade Nova de Lisboa, Portugal

  • Venue:
  • Proceedings of the 2007 ACM workshop on Parallel and distributed systems: testing and debugging
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

The emergence of multi-core processors is promoting the use of concurrency and multithreading. To raise the abstraction level of synchronization constructs is fundamental to ease the development of concurrent software, and Software Transactional Memory (STM) is a good approach towards such goal. However, execution environment issues such as the processor instruction set, caching policy, and memory model, may have strong influence upon the reliability of STM engines. This paper addresses the testing of STM engines aiming at improving their reliability and independence from execution environment. From our experience with porting and extending a specific STM engine, we report on some of the bugs found and synthesize some testing patterns that proved to be useful at testing STM engines.