2008 · 145 citations · 35 references
ComputingComputer ScienceHigh-performance ComputingCluster ComputingParallel ComputingStorage SystemsCache CoherenceCachingData LocalityData Locality OptimizationMemory HierarchyShared-memory MultiprocessingCommunication Overhead ReductionHigh PerformanceHigh-performance Computing PerformanceRemote Memory Access OverheadScalabilityScalable Memory SystemsShared Memory SystemsTransactional Memory
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.
35
Maurice Herlihy, J. Eliot B. Moss · 1993 · 2.2K citations
The notions of consistency and predicate locks in a database system
Kapali P. Eswaran, Jim Gray, Raymond A. Lorie et al. · Communications of the ACM · 1976 · 2K citations · Full text
Philippe Charles, Christian Grothoff, Vijay Saraswat et al. · 2005 · 1.3K citations
Nir Shavit, Dan Touitou · 1995 · 1.2K citations · Full text