Thread and Data Mapping in Software Transactional Memory: An Overview

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Pasqualin, Douglas Pereira, Diener, Matthias, Bois, André Rauber Du, Pilla, Maurício Lima
Format: Preprint
Published: 2022
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866916658356944896
author Pasqualin, Douglas Pereira
Diener, Matthias
Bois, André Rauber Du
Pilla, Maurício Lima
author_facet Pasqualin, Douglas Pereira
Diener, Matthias
Bois, André Rauber Du
Pilla, Maurício Lima
contents In current microarchitectures, due to the complex memory hierarchies and different latencies on memory accesses, thread and data mapping are important issues to improve application performance. Software transactional memory (STM) is an abstraction used for thread synchronization, replacing the use of locks in parallel programming. Regarding thread and data mapping, STM presents new challenges and mapping opportunities, since (1) STM can use different conflict detection and resolution strategies, making the behavior of the application less predictable and; (2) the STM runtime has precise information about shared data and the intensity with each thread accesses them. These unique characteristics provide many opportunities for low-overhead, but precise statistics to guide mapping strategies for STM applications. The main objective of this paper is to survey the existing work about thread and data mapping that uses solely information gathered from the STM runtime to guide thread and data mapping decisions. We also discuss future research directions within this research area.
format Preprint
id arxiv_https___arxiv_org_abs_2206_01359
institution arXiv
publishDate 2022
record_format arxiv
spellingShingle Thread and Data Mapping in Software Transactional Memory: An Overview
Pasqualin, Douglas Pereira
Diener, Matthias
Bois, André Rauber Du
Pilla, Maurício Lima
Distributed, Parallel, and Cluster Computing
In current microarchitectures, due to the complex memory hierarchies and different latencies on memory accesses, thread and data mapping are important issues to improve application performance. Software transactional memory (STM) is an abstraction used for thread synchronization, replacing the use of locks in parallel programming. Regarding thread and data mapping, STM presents new challenges and mapping opportunities, since (1) STM can use different conflict detection and resolution strategies, making the behavior of the application less predictable and; (2) the STM runtime has precise information about shared data and the intensity with each thread accesses them. These unique characteristics provide many opportunities for low-overhead, but precise statistics to guide mapping strategies for STM applications. The main objective of this paper is to survey the existing work about thread and data mapping that uses solely information gathered from the STM runtime to guide thread and data mapping decisions. We also discuss future research directions within this research area.
title Thread and Data Mapping in Software Transactional Memory: An Overview
topic Distributed, Parallel, and Cluster Computing
url https://arxiv.org/abs/2206.01359