Transactional Forwarding: Supporting Highly-Concurrent STM in Asynchronous Distributed Systems

  • Mohamed M. Saad Virginia Polytechnic Institute and State University
  • Binoy Ravindran Virginia Polytechnic Institute and State University

Resumo


Distributed software transactional memory (or DTM) is an emerging promising model for distributed concurrency control, as it avoids the problems with locks (e.g., distributed deadlocks), while retaining the programming simplicity of coarse-grained locking. We consider DTM in Herlihy and Sun's data flow distributed execution model, where transactions are immobile and objects dynamically migrate to invoking transactions. To support DTM in this model and ensure transactional properties including atomicity, consistency, and isolation, we develop an algorithm called Transactional Forwarding Algorithm (or TFA). TFA guarantees a consistent view of shared objects between distributed transactions, provides atomicity for object operations, and transparently handles object relocation and versioning using an asynchronous version clock-based validation algorithm. We show that TFA is opaque (its correctness property) and permits strong progressiveness (its progress property). We implement TFA in a Java DTM framework and conduct experimental studies on a 120-node system, executing over 4 million transactions, with more than 1000 active concurrent transactions. Our implementation reveals that TFA outperforms competing distributed concurrency control models including Java RMI with spin locks, distributed shared memory, and directory-based DTM, by as much as 13x (for read-dominant transactions), and competitor DTM implementations by as much as 4x.
Palavras-chave: Clocks, Synchronization, Protocols, System recovery, Concurrency control, Software, Data models, Distributed Systems, Software Transactional Memory, Asynchronous Network, Concurrency
Publicado
24/10/2012
SAAD, Mohamed M.; RAVINDRAN, Binoy. Transactional Forwarding: Supporting Highly-Concurrent STM in Asynchronous Distributed Systems. In: INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), 24. , 2012, Nova Iorque/EUA. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2012 . p. 219-226.