|
|
||
Janice J. Heiss's BlogSharing the Virtual Machine (technical session)Posted by hiheiss on June 30, 2004 at 08:20 PM | Comments (0)Just left the "Sharing the Virtual Machine" session TS-3207, all about scaling the JVM through sharing, and making the JVM a complete operating environment. The large hall was full as two researchers from Sun Labs, Grzegorz Czajkowski (presenting) and Mick Jordan, working from prototypes that are modifications of the HotSpot Java Virtual Machine, version 1.3.1, for the Solaris Operating Environment using a client compiler, reported impressive results on a SunFire 280R server. The take home message: the best way to scale Java technology is to co-locate multiple computations in a specially modified JVM. Users can securely manipulate private files, load their native libraries without endangering other computations and use all standard APIs. The modified JVM requires auxiliary processes for multiple operating system resource and user contexts, but the operating system itself requires no modification. The idea is to improve start-up time and performance, and decrease memory footprint. They have tried two experiments; one involving shared meta-data through shared memory, while the other encoded Java packages as shared libraries. They found similar improvements in both prototypes, with a 10% start-up time decrease and a memory footprint reduction of 10%. The cost of multiple OS processes is an obstacle. And shared VMs are more difficult owing to position independence and compiled code. The only technical criticism of multiple VMs is that the situation is similar to OS processes' dependency on the well-being of the kernel. And there can be a problem with buggy implementations. As for scalability of multiple VMs, start-up time is down to 4% for non-GUI apps and down 33% for GUI apps. Memory footprint is down between 50%-70%. The overall performance is increased through the benefits of collocation. The general conclusion: Re-architecting the JVM to host multiple Java applications outperforms cross-process meta-data sharing in regard to start-up time, memory footprint and performance. Steps are being taken towards a complete operating environment for the Java programs, in the form of an API for application of life-cycle management and an API for resource management. The research prototype is in progress, and Java 2 Platform, Micro Edition productization is underway. Go to TS 1634, Thursday, 2:30 p.m., July 1, Gateway 104 for more information about multiple VMs core technologies in a multi- tasking virtual machine for J2ME, targeted at the cellular phone market. The Barcelona Project Web Pages http://research.sun.com/projects/barcelonaJSR 121 http://www.jcp.org/en/jsr/detail?id=121Bookmark blog post: CommentsComments are listed in date ascending order (oldest first) | ||
|
|