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
Patent
08 Feb 2011
TL;DR: In this paper, a compiler or an optimizer is configured to analyze code that includes an atomic transaction to determine if any read access to shared memory locations are dominated by a previous read or write access to the same locations and/or any write accesses to sharedmemory locations are post-dominated by a subsequent write access.
Abstract: Systems and methods for optimizing transactional memory operations may employ static analysis of source code and static caching of memory objects to elide redundant transactional accesses. For example, a compiler (or an optimizer thereof) may be configured to analyze code that includes an atomic transaction to determine if any read accesses to shared memory locations are dominated by a previous read or write access to the same locations and/or any write accesses to shared memory locations are post-dominated by a subsequent write access to the same locations. Any access within a transaction that is determined to be redundant (e.g., any access other than the first read of a given shared memory location from within the transaction or the last write to a given shared memory location from within the transaction) may be replaced (by the compiler/optimizer) with a non-transactional access to a cached shadow copy of the shared memory location.

11 citations

Patent
14 Nov 2017
TL;DR: In this paper, register restoration using transactional memory register snapshots is presented, where an indication that a transaction is to be initiated is obtained and a determination is made as to whether register restoration is in active use.
Abstract: Register restoration using transactional memory register snapshots. An indication that a transaction is to be initiated is obtained. Based on obtaining the indication, a determination is made as to whether register restoration is in active use. Based on obtaining the indication and determining register restoration is in active use, register restoration is deactivated. To recover one or more architected registers of the transaction, a transactional rollback snapshot is created.

11 citations

Proceedings ArticleDOI
29 Jun 2010
TL;DR: The contribution of this paper is the response time analysis for the Abort-and-Restart (ANR) event handler semantics of P-FRP for SMP Real-Time systems.
Abstract: The Priority-Based Functional Reactive Programming (P-FRP) paradigm, aims to improve the programming of embedded microcontrollers. The combination of purely functional programming and cleanly-abortable event handlers, communicating via transactional memory (TM), makes it possible to write programs as stateless collections of functions, thus making them amenable to proofs and type safety. P-FRP implements executions as function evaluations, therefore, there are no "incomplete" function evaluations, as in the case of a task's interruption. To use P-FRP in the SMP (Symmetric Multiprocessor) environment, we must first understand the response time of programs written in its anticipated multiprocessor extension. Therefore, the contribution of this paper is the response time analysis for the Abort-and-Restart (ANR) event handler semantics of P-FRP for SMP Real-Time systems. ANR is neither a synchronization protocol nor a true scheduling policy. Instead, it is a policy for running tasks where the most important task is scheduled first. Results are derived for both fixed-priority (i.e., Rate Monotonic) and dynamic-priority (i.e., Earliest Deadline First) scheduling. We can say that the Abort-and-Restart and the TM models are similar, but also distinct, thus allowing our results to be adaptable for the analysis of TM.

11 citations

Proceedings ArticleDOI
22 Apr 2008
TL;DR: A transactional, optimistic concurrency control framework for WSANs that enables understanding of a system execution as a single thread of control, while permitting the deployment of actual execution over multiple threads distributed on several nodes is proposed.
Abstract: Effectively managing concurrent execution is one of the biggest challenges for future wireless sensor/actor networks (WSANs): for safety reasons concurrency needs to be tamed to prevent unintentional nondeterministic executions, on the other hand, for real-time guarantees concurrency needs to be boosted to achieve timeliness. We propose a transactional, optimistic concurrency control framework for WSANs that enables understanding of a system execution as a single thread of control, while permitting the deployment of actual execution over multiple threads distributed on several nodes. By exploiting the atomicity and broadcast properties of singlehop wireless communication, we provide a lightweight implementation of our transactional framework on the motes platform.

11 citations

Book ChapterDOI
17 Dec 2007
TL;DR: It is concluded that appropriate language support and high quality compiler optimizations are necessary parts of any STM system and transactional boosting is a promising alternative to existing "expert" approaches.
Abstract: We describe compiler optimizations for object-based Software Transactional Memory (STM) systems designed to make STM more accessible and efficient than is possible in the context of a purely library-based approach. Current object-based STM libraries are faced with a difficult tradeoff: offer an efficient but complex programming model or, as some recent libraries have done, sacrifice efficiency for ease-of-use. In this paper, we show that this dichotomy is not necessary. Our research suggests that an STM-enabled optimizing compiler can achieve performance comparable to that of the most efficient STM algorithms coded by a programmer, while still supporting a nearly transparent programming model. We also propose novel language extensions to support transactional boosting, a powerful new technique for transforming existing linearizable objects into transactional objects, thus permitting highly concurrent objects such as those found in the java.util.concurrent package to participate in STM transactions. When applied in conjunction with compiler support, we show that transactional boosting is both a flexible and natural way to escape the standard transactional model, and thus offers a promising alternative to existing "expert" approaches, such as open nesting and early release. Based on our results, we conclude that appropriate language support and high quality compiler optimizations are necessary parts of any STM system.

11 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