The Design and Implementation of Distributed Java Virtual Machine with an Improved Object Consistency Mechanism

W.C. Kang, D.T. Kim, and J.W. Lee (Korea)


Distributed Shared Memory, Distributed Shared Object, Distributed Java Virtual Machine, Lazy Release Consistency, MultiThreaded Java, Parallel processing


J-Cluster is a distributed shared memory(DSM) system that allows Java threads to be executed on distributed nodes. Unlike other approaches, it offers shared memory view in Java virtual machine(JVM)[3][6] level. This approach is preferred because it does not need language support and it allows the use of Java object-semantics which helps optimize a system for better performance. In this paper, we present a design, an implementation and a preliminary performance evaluation of J-Cluster. Our objective is to determine the efficiency of a JVM level DSM system. Our result shows satisfactory speedups for the tested workloads like TSP, matrix multiplication and Jacobi relaxation. As computation-to communication ratio increases we could observe more speedups, and it means that with suitable networking technology, a DSM at JVM level is a viable technique for parallel processing in a distributed environment. Other contributions for the speedups include the replication of shared objects in local memory and the use of the lazy release consistency(LRC) memory model. Exchange of consistency related informations are limited only between a latest lock releaser and the current acquirer of the lock. This optimization entails a significant performance gain compared with other approaches.

Important Links:

Go Back