[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.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Savannah-hackers] savannah.gnu.org: submission of REJAVIM,
callakkumar <=