Concurrency control and recovery in database systems
Concurrency control and recovery in database systems
Transactional memory: architectural support for lock-free data structures
ISCA '93 Proceedings of the 20th annual international symposium on computer architecture
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
Co-array Fortran for parallel programming
ACM SIGPLAN Fortran Forum
On optimistic methods for concurrency control
ACM Transactions on Database Systems (TODS)
The serializability of concurrent database updates
Journal of the ACM (JACM)
Implementing atomic actions on decentralized data
ACM Transactions on Computer Systems (TOCS)
The notions of consistency and predicate locks in a database system
Communications of the ACM
Software transactional memory for dynamic-sized data structures
Proceedings of the twenty-second annual symposium on Principles of distributed computing
GASNet Specification, v1.1
Language support for lightweight transactions
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Design tradeoffs in modern software transactional memory systems
LCR '04 Proceedings of the 7th workshop on Workshop on languages, compilers, and run-time support for scalable systems
Virtualizing Transactional Memory
Proceedings of the 32nd annual international symposium on Computer Architecture
UPC: Distributed Shared-Memory Programming
UPC: Distributed Shared-Memory Programming
X10: an object-oriented approach to non-uniform cluster computing
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
McRT-STM: a high performance software transactional memory system for a multi-core runtime
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Exploiting distributed version concurrency in a transactional memory cluster
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Snapshots and software transactional memory
Science of Computer Programming - Special issue: Concurrency and synchronization in Java programs
The Atomos transactional programming language
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Optimizing memory transactions
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Compiler and runtime support for efficient software transactional memory
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
Architectural Support for Software Transactional Memory
Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture
Making the fast case common and the uncommon case simple in unbounded transactional memory
Proceedings of the 34th annual international symposium on Computer architecture
An effective hybrid transactional memory system with strong isolation guarantees
Proceedings of the 34th annual international symposium on Computer architecture
An integrated hardware-software approach to flexible transactional memory
Proceedings of the 34th annual international symposium on Computer architecture
Enforcing isolation and ordering in STM
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Subtleties of Transactional Memory Atomicity Semantics
IEEE Computer Architecture Letters
Understanding Tradeoffs in Software Transactional Memory
Proceedings of the International Symposium on Code Generation and Optimization
Parallel Programmability and the Chapel Language
International Journal of High Performance Computing Applications
Distributed transactional memory for metric-space networks
DISC'05 Proceedings of the 19th international conference on Distributed Computing
Adaptive software transactional memory
DISC'05 Proceedings of the 19th international conference on Distributed Computing
On Scalable Synchronization for Distributed Embedded Real-Time Systems
SEUS '08 Proceedings of the 6th IFIP WG 10.2 international workshop on Software Technologies for Embedded and Ubiquitous Systems
An analytic framework for performance modeling of software transactional memory
Computer Networks: The International Journal of Computer and Telecommunications Networking
Response time analysis of software transactional memory-based distributed real-time systems
Proceedings of the 2009 ACM symposium on Applied Computing
Optimistic concurrency for clusters via speculative locking
SYSTOR '09 Proceedings of SYSTOR 2009: The Israeli Experimental Systems Conference
Investigating transactional memory performance on ccNUMA machines
Proceedings of the 18th ACM international symposium on High performance distributed computing
Symbolic prefetching in transactional distributed shared memory
Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming
Cloud-TM: harnessing the cloud with distributed transactional memories
ACM SIGOPS Operating Systems Review
GUESSTIMATE: a programming model for collaborative distributed systems
PLDI '10 Proceedings of the 2010 ACM SIGPLAN conference on Programming language design and implementation
Brief announcement: NUMA-aware transactional memory
Proceedings of the 29th ACM SIGACT-SIGOPS symposium on Principles of distributed computing
Proceedings of the Conference on Design, Automation and Test in Europe
Adaptive conflict unit size for distributed optimistic synchronization
EuroPar'10 Proceedings of the 16th international Euro-Par conference on Parallel processing: Part I
Generic replication of software transactional memory
Proceedings of the 7th Middleware Doctoral Symposium
On transactional scheduling in distributed transactional memory ystems
SSS'10 Proceedings of the 12th international conference on Stabilization, safety, and security of distributed systems
A provably starvation-free distributed directory protocol
SSS'10 Proceedings of the 12th international conference on Stabilization, safety, and security of distributed systems
Scalable Speculative Parallelization on Commodity Clusters
MICRO '43 Proceedings of the 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture
SCert: Speculative certification in replicated software transactional memories
Proceedings of the 4th Annual International Conference on Systems and Storage
HyFlow: a high performance distributed software transactional memory framework
Proceedings of the 20th international symposium on High performance distributed computing
Automatically generating symbolic prefetches for distributed transactional memories
Proceedings of the ACM/IFIP/USENIX 11th International Conference on Middleware
Asynchronous lease-based replication of software transactional memory
Proceedings of the ACM/IFIP/USENIX 11th International Conference on Middleware
Snake: control flow distributed software transactional memory
SSS'11 Proceedings of the 13th international conference on Stabilization, safety, and security of distributed systems
SPECTRE: speculation to hide communication latency
Proceedings of the Second Asia-Pacific Workshop on Systems
Shared work list: hacking amorphous data parallelism in UPC
Proceedings of the 2012 International Workshop on Programming Models and Applications for Multicores and Manycores
TM2C: a software transactional memory for many-cores
Proceedings of the 7th ACM european conference on Computer Systems
A quorum-based replication framework for distributed software transactional memory
OPODIS'11 Proceedings of the 15th international conference on Principles of Distributed Systems
Automatic speculative DOALL for clusters
Proceedings of the Tenth International Symposium on Code Generation and Optimization
A transactional runtime system for the Cell/BE architecture
Journal of Parallel and Distributed Computing
Brief announcement: towards a fully-articulated pessimistic distributed transactional memory
Proceedings of the twenty-fifth annual ACM symposium on Parallelism in algorithms and architectures
Efficient execution of speculative threads and transactions with hardware transactional memory
Future Generation Computer Systems
Leveraging GPUs using cooperative loop speculation
ACM Transactions on Architecture and Code Optimization (TACO)
Hi-index | 0.00 |
While there has been extensive work on the design of software transactional memory (STM) for cache coherent shared memory systems, there has been no work on the design of an STM system for very large scale platforms containing potentially thousands of nodes. In this work, we present Cluster-STM, an STM designed for high performance on large-scale commodity clusters. Our design addresses several novel issues posed by this domain, including aggregating communication, managing locality, and distributing transactional metadata onto the nodes. We also re-evaluate several STM design choices previously studied for cache-coherent machines and conclude that, in some cases, different choices are appropriate on clusters. Finally, we show that our design scales well up to 512 processors. This is because on a cluster, the main barrier to STM scalability is the remote communication overhead imposed by the STM operations, and our design aggregates most of that communication with the communication of the underlying data.