harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wenlong Li (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-6039) Implement on-demand class library parsing to avoid unnecessary jar/zip parsing during startup
Date Fri, 19 Dec 2008 07:37:44 GMT

    [ https://issues.apache.org/jira/browse/HARMONY-6039?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658030#action_12658030

Wenlong Li commented on HARMONY-6039:

To enable on-demand class library parsing, I add another property file (modulelibrarymapping.properties),
which resides in same directory as bootclasspath.properties file (the directory is working_classlib/depends/files/).
The purpose of this added file is for mapping module and class libraries. 

If the patch is put in Harmony later, please keep in mind two changes:
(1) If you want to add new modules/libraries, please don't put them in the bootclasspath.properties
file. This file now only saves modules needed during startup (the VM startup only accesses
class libraries in eight modules)
(2) For new modules/libraries, please put them in the modulelibrarymapping.properties file.
You should specify the module name and its exported class library. Here is one example: math.jar=java.math,
where "math.jar" means the module name, and "java.math" means the class libraries this module

> Implement on-demand class library parsing to avoid unnecessary jar/zip parsing during
> ---------------------------------------------------------------------------------------------
>                 Key: HARMONY-6039
>                 URL: https://issues.apache.org/jira/browse/HARMONY-6039
>             Project: Harmony
>          Issue Type: Improvement
>          Components: VM
>         Environment: Conduct experiments on Windows XP, Core 2 Quad-core machine
>            Reporter: Wenlong Li
>            Assignee: Xiao-Feng Li
>         Attachments: H6039_on_demand_library_parsing_patch, on_demand_patch
> During VM creation, Harmony will parse all class libraried defined in bootclasspath.properties
under jre/lib/boot directory. However, not all class libraries are accessed during startup.
That means, it is not necessary to open and resolve all these class libraries.
> In this patch, I implement the on-demand jar parsing. I leverage the class library info
defined in the manifest file of each module. For a request class, if it is not available in
existing class table, I then parse its class library info, and check which module contains
this requested class. That is, I parse the class library on demand.
> Using on-demand class library parsing, I can reduce the VM creation time from 20+ seconds
to 3 seconds.
> I enable this feature into reading boot class path option, and it can be disabled by
using -Xbootclasspath option. 

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message