RFR: 8349400: Improve startup speed via eliminating nested classes

Daniel Jeliński djelinski at openjdk.org
Wed Feb 5 12:29:11 UTC 2025


On Sun, 2 Feb 2025 19:35:03 GMT, Shaojin Wen <swen at openjdk.org> wrote:

> During JVM startup, the class KnownOIDs is loaded. KnownOIDs has 10 anonymous classes, which slows down the startup. This PR is to improve KnownOIDs and eliminate unnecessary embedded classes.
> 
> 
> Here's how to reproduce this:
> 
> 
> public class Startup {
>     public static void main(String[] args) {}
> }
> 
> 
> 
> java -verbose:class Startup
> 
> 
> 
> [0.665s][info][class,load] sun.security.util.KnownOIDs
> [0.666s][info][class,load] sun.security.util.KnownOIDs$1
> [0.667s][info][class,load] sun.security.util.KnownOIDs$2
> [0.667s][info][class,load] sun.security.util.KnownOIDs$3
> [0.668s][info][class,load] sun.security.util.KnownOIDs$4
> [0.668s][info][class,load] sun.security.util.KnownOIDs$5
> [0.668s][info][class,load] sun.security.util.KnownOIDs$6
> [0.668s][info][class,load] sun.security.util.KnownOIDs$7
> [0.669s][info][class,load] sun.security.util.KnownOIDs$8
> [0.669s][info][class,load] sun.security.util.KnownOIDs$9
> [0.669s][info][class,load] sun.security.util.KnownOIDs$10

The reproducer you provided doesn't try to load KnownOIDs on my machine. What am I missing?

Other than that, the change looks reasonable to me.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/23411#issuecomment-2636592100


More information about the security-dev mailing list