Treffer: Reducing Memory Sharing Overheads in Distributed JVMs.
Weitere Informationen
Distributed JVM systems by supporting Java's shared-memory model enable concurrent Java applications to run transparently on clusters of computers. Aiming to reduce the overheads associated to memory coherence enforcement mechanisms required in such distributed JVMs, we propose two new techniques, selective dynamic diffing and lazy home allocation. To evaluate their potential benefits, both techniques were implemented in CoJVM, a distributed JVM system that we developed in a previous work. In the sequel, several experiments based on five representative concurrent Java applications were carried out using the original and modified CoJVM versions. The analysis of the experimental results showed that dynamic diffing and lazy home allocation, either in isolation or in combination, can reduce significantly memory sharing overheads due to message traffic, extra memory space, and high latency of remote memory accesses. Specifically, the application of these techniques resulted in considerable gains in performance, ranging from 9% up to 20% in four out of five applications, with speedups varying from 6.5 up to 8.1 for an 8-node cluster. Keywords: JVM, distributed shared memory, Java, cluster computing, concurrent Java applications, high-performance computing. [ABSTRACT FROM AUTHOR]