savannah-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Savannah-hackers] savannah.gnu.org: submission of REJAVIM


From: callakkumar
Subject: [Savannah-hackers] savannah.gnu.org: submission of REJAVIM
Date: Mon, 25 Feb 2002 01:38:57 -0500

A package was submitted to savannah.gnu.org.
This mail was sent to address@hidden, address@hidden


Karthik Kumar Arun Kumar <address@hidden> described the package as follows:
License: gpl
Other License: 
Package: REJAVIM
System name: rejavim
This package wants to apply for inclusion in the GNU project

Necessity:
Java is the preferred development environment for applications across different 
platforms but still evaded by developers of high-perfomance computing, thanks 
to the performance loss it encounters while achieving platform independence. 
Two crucial issues determine the performance of a Java Virtual Machine (JVM) - 
class loading and native code generation. Dynamic class loading is used to 
improve class loading. Technologies like HotSpot(C) perform optimizations by 
identifying some code fragments interpreted frequently, called HotSpots, across 
the life of a single application and applies   Just-in-Time (JIT) compiler for 
the Hotspots only. Both Dynamic class loading and identification of Hotspots 
across the life of a single application is a direct consequence of the fact 
that current Java Virtual Machine (JVM) implementations for Linux,like Sun\'s 
impementation and Kaffe, run the JVM as an application atop the native 
operating system. Since the JVM is launched as an independent process, the JVM 
upon its exit retains no information (instead of \'data\') about the 
application that could used to optimize the next time the JVM is launched.

Description of solution to the above issues:

This project is called REJAVIM (REtentive JAva VIrtual Machine) in which the 
JVM is launched as a daemon process, and individual java applications take the 
form of child processes of the same.  The two performance-impeding issues 
mentioned above are addressed as follows in our paper. The bootstrap 
class-loader being part of the JVM, retains classes loaded at the end of a run 
of an application. This effectively eliminates the necessity to reload the 
classes again when used again by a Java application, which need not be the same 
as the one, which loaded the class initially. The JIT-code generating module 
also being part of the JVM retains the native code generated for Hotspots 
identified, using a similar strategy mentioned above for class loading. 
Hotspots could be identified over the life period of the virtual machine rather 
than the life period of an application. Retaining classes as well as 
identifying hotspots are customized by using the strategy pattern to choose 
appropriate replacement policies.

To be developed on: GNU/Linux
Platform( to be supported): i386 ,
 Itanium ( in the near future ).
 
Status:
It does not exist yet but I\'m working on it.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]