A Generic Framework for Replicated Software Transactional Memories

@article{Carvalho2011AGF,
  title={A Generic Framework for Replicated Software Transactional Memories},
  author={Nuno A. Carvalho and Paolo Romano and Lu{\'i}s E. T. Rodrigues},
  journal={2011 IEEE 10th International Symposium on Network Computing and Applications},
  year={2011},
  pages={271-274}
}
Software Transactional Memory (STM) has emerged a powerful abstraction for managing access to shared data. Therefore, it is no surprise that a handful of different STM replication schemes have been proposed in the last recent years. In this context, we propose an architecture that facilitates the integration and execution of multiple replication techniques in a single, coherent, middleware infrastructure. This paves the way towards the development of autonomic mechanisms, able to select in… 

Figures from this paper

On Closed Nesting in Distributed Transactional Memory
TLDR
This work contributes the first ever implementation of a D-STM system with support for closed nested transactions and partial aborts, and discusses the performance implications of such nesting.
Hyflow2: a high performance distributed transactional memory framework in scala
TLDR
A new DTM framework for the Java Virtual Machine named Hyflow2 is proposed, based on the existing ScalaSTM API soon to be included in the Scala standard library, to create a smooth transition from multiprocessor STM programs to DTM.
Nesting in Distributed Transactional Memory : Technical Report
TLDR
This work contributes the first ever implementation of a DTM system with support for open nested transactions, and discusses the mechanisms and performance implications of such nesting, and identifies the cases where using open nesting is warranted.
A Generic and Distributed Dependable Software Transactional Memory
TLDR
The thesis proposes several novel replication protocols suitable for building dependable distributed STMs and proposes a generic architecture that allows multiple replication protocols to coexist in a seamless manner in the same STM, opening the door to build adaptive solutions that can dynamically and automatically select the best replication protocol for a given deployment and workload.
A modular distributed transactional memory framework
TLDR
This work extends an existing, efficient, STM framework with a new software layer to create a DSTM framework that allows the implementation of different distributed memory models while providing a non-intrusive, familiar, programming model to applications, unlike any other DSTm framework.
Self-tuning in Distributed Transactional Memory
TLDR
This chapter surveys existing research in the area of autonomic DTM design, with a focus on the approaches aimed at answering the following two fundamental questions: how many resources should a DTM platform be provisioned with, and which protocols should be used to ensure data consistency.
On Open Nesting in Distributed Transactional Memory: Technical Report
TLDR
This work contributes the first ever implementation of a DTM system with support for open nested transactions, and discusses the mechanisms and performance implications of such nesting, and identifies the cases where using open nesting is warranted.
Partial replication in distributed software transactional memory
TLDR
The results of this thesis show that the claim that it is possible to combine both full and partial data replication in a DSTM system for a general-purpose programming language was able to sustain its claim by implementing a prototype that effectively combines full andpartial data replication.
Hyflow 2 : A High Performance Distributed Transactional Memory Framework in Scala Alexandru Turcu
TLDR
A new DTM framework for the Java Virtual Machine named Hyflow2 is proposed, based on the existing ScalaSTM API soon to be included in the Scala standard library, to create a smooth transition from multiprocessor STM programs to DTM.
Supporting Partial Data Replication in Distributed Transactional Memory
TLDR
This work proposes PARdstm, to the best of its knowledge, the first DTM framework to include support for partial data replication, and proposes a modular software framework that embeds such principles to provide a highly expressive and non-intrusive programming API.
...
1
2
3
4
...

References

SHOWING 1-10 OF 16 REFERENCES
Asynchronous Lease-Based Replication of Software Transactional Memory
TLDR
Asynchronous Lease Certification (ALC), an innovative STM replication scheme that exploits the notion of asynchronous lease to reduce the replica coordination overhead and shelter transactions from repeated abortions due to conflicts originated on remote nodes is presented.
DiSTM: A Software Transactional Memory Framework for Clusters
TLDR
A research platform for exploiting software TMon clusters and the distributed software transactional memory (DiSTM) system has been designed for easy prototyping of TM coherence protocols and it does not rely on a software or hardware implementation of distributed shared memory.
D 2 STM : Dependable Distributed Software Transactional Memory ∗
TLDR
D STM is presented, a replicated STM that makes use of the computing resources available at multiple nodes of a distributed system that permits to significantly reduce the overheads of replica coordination at the cost of a user tunable increase in the probability of transaction abort.
D2STM: Dependable Distributed Software Transactional Memory
TLDR
D2STM is presented, a replicated STM whose consistency is ensured in a transparent manner, even in the presence of failures, and which permits to achieve remarkable performance gains even for negligible increases of the transaction abort rate.
Versioned boxes as the basis for memory transactions
A flexible framework for implementing software transactional memory
TLDR
DSTM2, a Java™ software library that provides a flexible framework for implementing object-based software transactional memory (STM), is described, providing a substantial improvement over the awkward programming interface of the previous DSTM library.
Towards a Generic Group Communication Service
View synchronous group communication is a mature technology that greatly eases the development of reliable distributed applications by enforcing precise message delivery semantics, especially in face
Introduction to reliable distributed programming
TLDR
This textbook comes with a companion set of running examples implemented in Java that can be used by students to get a better understanding of how reliable distributed programming abstractions can be implemented and used in practice.
Towards a new model of abstraction in software engineering
  • G. Kiczales
  • Computer Science
    Proceedings 1991 International Workshop on Object Orientation in Operating Systems
  • 1991
TLDR
The author has developed a new model of abstraction, which he calls the two-view approach; the first view is the traditional one, it provides the functionality of the abstraction, the second view allows the user to participate in some implementation decisions.
Design patterns: elements of reuseable object-oriented software
The book is an introduction to the idea of design patterns in software engineering, and a catalog of twenty-three common patterns. The nice thing is, most experienced OOP designers will find out
...
1
2
...