Title :
Transactional Forwarding: Supporting Highly-Concurrent STM in Asynchronous Distributed Systems
Author :
Saad, Mohamed M. ; Ravindran, Binoy
Author_Institution :
ECE Dept., Virginia Tech, Blacksburg, VA, USA
Abstract :
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.
Keywords :
Java; concurrency control; configuration management; distributed processing; programming; transaction processing; Java DTM framework; asynchronous distributed system; asynchronous version clock-based validation algorithm; atomicity property; coarse-grained locking; concurrent STM; consistency property; correctness property; data flow distributed execution model; distributed concurrency control; distributed software transactional memory; distributed transaction; isolation property; object operation; object relocation; object versioning; programming; transactional forwarding algorithm; Clocks; Concurrency control; Data models; Protocols; Software; Synchronization; System recovery; Asynchronous Network; Concurrency; Distributed Systems; Software Transactional Memory;
Conference_Titel :
Computer Architecture and High Performance Computing (SBAC-PAD), 2012 IEEE 24th International Symposium on
Conference_Location :
New York, NY
Print_ISBN :
978-1-4673-4790-7
DOI :
10.1109/SBAC-PAD.2012.36