RFR 4947890 : Minimize JNI upcalls in system-properties initialization
Roger.Riggs at oracle.com
Wed Nov 14 21:02:13 UTC 2018
The change does not make a measurable change in startup time.
The number of bytecodes executed in initPhase1 dropped from 60k to 50k
out of 850k.
On 11/14/2018 12:25 PM, Mandy Chung wrote:
> Hi Roger,
> Does this change improve the startup performance? initProperties
> is done in initPhase1 where the Java code is running in interpreted
> mode. Brent did the measurement some time ago that JNI calls
> is one cost while executing quite a lot of bytecodes in
> interpreted mode is another cost.
> On 11/13/18 7:59 AM, Roger Riggs wrote:
>> Please review a re-implementation of the initialization of System
>> moving some functions from native to Java.
>> The upcalls from native to java for each property are replaced by a
>> to gather the platform, VM and command line properties and return them
>> from a single JNI call. The creation of the Properties instance and
>> command line overrides is handled in Java instead of native.
>> The JVM_initProperties interface in Hotspot is replaced by
>> Thanks, Roger
More information about the core-libs-dev