RFR: 8236075: Minor bootstrap improvements
Claes Redestad
claes.redestad at oracle.com
Tue Jan 21 11:25:35 UTC 2020
Hi Sergey,
as per usual: verification mainly by running a "Hello World"-style apps
repeatedly via:
perf stat -r 250 $JAVA_HOME/bin/java Hello
(FTR, this is one of the least impactful startup improvements I've
shepherded, on my machine the net effect is ~0.1-0.2% reduction on Hello
World; more impactful things are in the pipeline)
Majority of the changes in this patch is neutral w.r.t. startup, in
particular the refactoring of library paths, which is motivated more by
it eliminating a (mostly theoretical) initialization race.
In this case I also verified the default CDS archive shrinks by ~20Kb
thanks to not having to include the Vector class.
/Claes
On 2020-01-21 01:59, Sergey Bylokhov wrote:
> Hi Claes,
>
> How did you measure this performance improvement?
>
> On 1/20/20 7:54 am, Claes Redestad wrote:
>> Hi,
>>
>> some minor cleanups and enhancements in and around java.lang.ClassLoader
>> which add up to a small startup improvement:
>>
>> - Remove use of Vector/Hashtable from ClassLoader, along with a few
>> other improvements/modernizations.
>> - Refactor ClassLoader::sys_paths/user_paths so that they're initialized
>> lazily but also published safely
>>
>> Webrev: http://cr.openjdk.java.net/~redestad/8236075/open.01/
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8236075
>>
>> Testing: tier1-3
>>
>> Thanks!
>>
>> /Claes
>
>
More information about the core-libs-dev
mailing list