scispace - formally typeset
Search or ask a question
Topic

Transactional memory

About: Transactional memory is a research topic. Over the lifetime, 2365 publications have been published within this topic receiving 60818 citations.


Papers
More filters
Proceedings ArticleDOI
27 Sep 2017
TL;DR: This paper builds upon an existing pauseless transactional GC algorithm and design an important optimization that would significantly increase its throughput, and devise selective access barriers, that define multiple paths based on the state of the garbage collector.
Abstract: The garbage collector (GC) is a critical component of any managed runtime environment (MRE), such as the Java virtual machine. While the main goal of the GC is to simplify and automate memory management, it may have a negative impact on the application performance, especially on multi-core systems. This is typically due to stop-the-world pauses, i.e., intervals for which the application threads are blocked during the collection. Existing approaches to concurrent GCs allow the application threads to perform at the same time as the GC at the expense of throughput and simplicity. In this paper we build upon an existing pauseless transactional GC algorithm and design an important optimization that would significantly increase its throughput. More precisely, we devise selective access barriers, that define multiple paths based on the state of the garbage collector. Preliminary evaluation of the selective barriers shows up to 93% improvement over the initial transactional barriers in the worst case scenario. We estimate the performance of a pauseless GC having selective transactional barriers and find it to be on par with Java's concurrent collector.

2 citations

Proceedings ArticleDOI
25 Jun 2012
TL;DR: This work presents Transactional Memory System for Cluster (Clustm), a generalized and scalable distributed transactional memory system that addresses several open issues posed by this domain, including transactionalMemory consistency Protocol, cache consistency protocol, and the distribution strategy of the metadata of shared data across the cluster.
Abstract: Transactional memory (TM) is a parallel programming concept which reduces challenges in parallel programming. Existing distributed transactional memory system consumes too much bandwidth and brings high latency. In this work, we present Transactional Memory System for Cluster (Clustm), a generalized and scalable distributed transactional memory system. Our system addresses several open issues posed by this domain, including transactional memory consistency protocol, cache consistency protocol, and the distribution strategy of the metadata of shared data across the cluster. Then, we evaluate our design with several workloads, and the results demonstrate outstanding performance.

2 citations

Dissertation
15 Feb 2010
TL;DR: This thesis studies parallelization of multiplayer games using software Transactional Memory (STM) support and shows that STM provides not only ease of programming, but also better scalability than achievable with state-of-the-art lock-based programming for this realistic high impact application.
Abstract: Scalable and transparent parallelization of multiplayer games Bogdan Simion Master of Applied Science Graduate Department of Electrical and Computer Engineering University of Toronto 2009 In this thesis, we study parallelization of multiplayer games using software Transactional Memory (STM) support. We show that STM provides not only ease of programming, but also better scalability than achievable with state-of-the-art lock-based programming for this realistic high impact application. We evaluate and compare two parallel implementations of a simplified version (named SynQuake) of the popular game Quake. While in STM SynQuake support for maintaining consistency of each potentially complex game action is automatic, conservative locking of surrounding objects within a bounding-box for the duration of the game action is inherently needed in lock-based SynQuake. This leads to higher scalability of STM SynQuake versus lock-based SynQuake due to increased false sharing in the latter. Task assignment to threads has a second-order effect on scalability of STM-SynQuake, impacting the application’s true sharing patterns. We show that a locality-aware task assignment provides the best trade-off between load balancing and conflict reduction.

2 citations

01 Jan 2014
TL;DR: This paper introduces a new condition synchronization mechanism based on the idea of predicates and states that is compatible with hardware, software, and hybrid transactional memories, is simpler to implement than the current state of the art, and does not rely on extensive support from run-time libraries.
Abstract: In this paper, we introduce a new condition synchronization mechanism based on the idea of predicates and states. Our algorithm is compatible with hardware, software, and hybrid transactional memories, is simpler to implement than the current state of the art, and does not rely on extensive support from run-time libraries.

2 citations

Journal Article
TL;DR: This paper shows that if a language implementation provides reflective access to explicit memory locations, it becomes straightforward to build an STM framework for this language and to implement STM algorithms using this framework.
Abstract: Software transactional memory (STM) is a new approach for coordinating concurrent threads, for which many different implementation strategies are currently being researched. In this paper we show that if a language implementation provides reflective access to explicit memory locations, it becomes straightforward to both (a) build an STM framework for this language and (b) to implement STM algorithms using this framework. A proof-of-concept implementation in the form of a Scheme interpreter (written in Common Lisp) is presented.

2 citations


Network Information
Related Topics (5)
Compiler
26.3K papers, 578.5K citations
87% related
Cache
59.1K papers, 976.6K citations
86% related
Parallel algorithm
23.6K papers, 452.6K citations
84% related
Model checking
16.9K papers, 451.6K citations
84% related
Programming paradigm
18.7K papers, 467.9K citations
83% related
Performance
Metrics
No. of papers in the topic in previous years
YearPapers
202316
202240
202129
202063
201970
201888