generic replication of software transactional memory
Software Transactional Memory (STM) is a powerful tool for managing access to shared data. A major impairment to the adoption of this technology in mainstream applications is the lack of efficient replication schemes capable of ensuring adequate scalability and fault-tolerance levels. A key issue is that no existing replication approach succeeds in delivering optimal performance across the entire spectrum of possible transactional workloads. In this work we describe an architecture for generic replication of STMs. Our approach strongly simplifies the development and evaluation of alternative STM replication policies, by defining neat, generic interfaces that encapsulate the three key components at the core of a replicated STM: the local STM, the replica coordination manager and the underlying group communication system. Our generic architecture for STM replication aims at integrating the results from the growing community of researchers working in this area, paving the way towards the development of self-optimizing STM replication mechanisms.
software transactional memory fault tolerance generic middleware architecture