Call for Discussion: New Project: Leyden

Jiangli Zhou jianglizhou at google.com
Mon May 18 22:43:34 UTC 2020


Didn't see this discussion until today. I think this will be welcomed by
Java developers! How do we participate in the project and coordinate?

I have been experimenting with preserving pre-initialized classes (at build
time) as part of the CDS archive image. Class pre-initialization can help
field and method pre-resolution and generate better AOT code. Here is a class
pre-resolution & pre-initialization proposal
<https://docs.google.com/document/d/17RV8W6iqJj9HhjGSO9k1IXfs_9lvHDNgxxr8pFoeDys/edit?usp=sharing>
that enhances
the existing Hotspot heap archiving and provides more general support to
pre-initialize classes and preserve static field values for both JDK
classes and application classes (loaded by system class loader). I adopted
the annotation approach in the proposal, after comparing it to other
alternatives, please see details in the design doc. Here are the slides
<https://docs.google.com/presentation/d/1pfHZugMalMAWISGLxrNODow-99A9-TC_6DUMnc15_Ko/edit?usp=sharing>
that contain the high-level overview of the design proposal.

My prototype that implements the proposal on JDK 11 showed ~2ms JVM startup
time improvement when pre-initializing ~100 JDK classes.

Best regards,

Jiangli


More information about the discuss mailing list