Characterizing the Sharing Behavior of Applications Using Software Transactional Memory

Douglas Pereira Pasqualin, Matthias Diener, André Rauber Du Bois, Maurício Lima Pilla

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Software Transactional Memory (STM) is an alternative abstraction for process synchronization in parallel programming. It is often easier to use than locks, avoiding issues such as deadlocks. In order to improve STM performance, many studies have been made on transactional schedulers. However, in current architectures with complex memories hierarchies, it is also important to map threads in such a way that threads that share data are executed close to each other in the memory hierarchy, such that they can access data protected by STM faster. For a successful thread mapping of an STM application, it is important to perform an in-depth analysis of its sharing behavior to determine its suitability for different mapping policies and the expected performance gains. This paper characterizes the sharing behavior of the STAMP benchmark suite by using information extracted from the STM runtime, providing information to guide thread mapping based on their sharing behavior. Our main findings are that most of the STAMP applications are suitable for a static thread mapping approach to improve the performance since (1) the applications do not present dynamic behavior and (2) the sharing pattern does not change between executions. Furthermore, we show that sharing information gathered from the STM runtime can be used to analyze and reduce false sharing in TM applications.

Original languageEnglish (US)
Title of host publicationBenchmarking, Measuring, and Optimizing - Third BenchCouncil International Symposium, Bench 2020, Revised Selected Papers
EditorsFelix Wolf, Wanling Gao
PublisherSpringer
Pages3-21
Number of pages19
ISBN (Print)9783030710576
DOIs
StatePublished - 2021
Event3rd BenchCouncil International Symposium on Benchmarking, Measuring, and Optimizing, Bench 2020 - Virtual, Online
Duration: Nov 15 2020Nov 16 2020

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume12614 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference3rd BenchCouncil International Symposium on Benchmarking, Measuring, and Optimizing, Bench 2020
CityVirtual, Online
Period11/15/2011/16/20

Keywords

  • Characterization
  • Communication matrix
  • Sharing behavior
  • Software transactional memory
  • STAMP
  • Thread mapping

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science

Fingerprint

Dive into the research topics of 'Characterizing the Sharing Behavior of Applications Using Software Transactional Memory'. Together they form a unique fingerprint.

Cite this