cJVM: a single system image of a JVM on a cluster

cJVM is a Java Virtual Machine (JVM) that provides a single system image of a traditional JVM while executing on a cluster. cJVM virtualizes the cluster, supporting any pure Java application without requiring any code modifications. By distributing the application's work among the cluster'...

Full description

Saved in:
Bibliographic Details
Published inProceedings of the 1999 International Conference on Parallel Processing pp. 4 - 11
Main Authors Aridor, Y., Factor, M., Teperman, A.
Format Conference Proceeding
LanguageEnglish
Published IEEE 1999
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:cJVM is a Java Virtual Machine (JVM) that provides a single system image of a traditional JVM while executing on a cluster. cJVM virtualizes the cluster, supporting any pure Java application without requiring any code modifications. By distributing the application's work among the cluster's nodes, cJVM aims to obtain improved scalability for Java Server Applications. cJVM uses a novel object model which distinguishes between an application's view of an object and its implementation (e.g., different objects of the same class may have different implementations). This allows us to exploit knowledge on the usage of individual objects to improve performance. cJVM is work-in-progress. Our prototype runs on a cluster of IBM IntelliStations running Win/NT and are connected via a Myrinet switch. It provides a single system image to applications, distributing the application's threads and objects over the cluster. We have used cJVM to run without change a real Java application containing over 10Kloc and have achieved linear speedup for another application with a large number of independent threads. This paper discusses cJVM's architecture and implementation, showing how to provide a single system image of a traditional JVM on a cluster.
ISBN:9780769503509
0769503500
ISSN:0190-3918
2332-5690
DOI:10.1109/ICPP.1999.797382