Adaptive Protocols for a Distributed Java Virtual Machine

Project Description

Java is a language of growing importance but so far parallelism in Java has been limited to either multi-threading on symmetric multiprocessors (SMP) or distributed computing using Remote Method Invocation (RMI). The number and size of Java-based Internet-related applications require more and more parallelism and system scalability. This proposal addresses the problem of designing memory consistency protocols for a distributed Java Virtual Machine capable of self-adapting at runtime to different application characteristics. The work under this project is divided into five tasks: (1) the definition of the memory consistency model, (2) the development of consistency protocols, (3) the definition of an analytical performance model on which adaptive protocols are based, (4) the development of processor allocation algorithms for load balancing, and (5) the evaluation of the system performance using four classes of applications.

Funded by:

National Science Foundation