from Hacker News

JEP 519: Compact Object Headers

by Skinney on 5/22/25, 8:24 AM with 10 comments

  • by SerCe on 5/22/25, 9:08 AM

    The previous JEP 450 [1] has a lot more implementation details for those who are interested.

    > They have been tested at Oracle by running the full JDK test suite. They have also been tested at Amazon by hundreds of services in production, most of them using backports of the feature to JDK 21 and JDK 17.

    One of the underappreciated perks of working on platform teams in large (and very large in the case of Amazon) companies is that you've got a playground to see and quantify the impact of your performance work that few others have.

    [1]: https://openjdk.org/jeps/450

  • by nicktelford on 5/22/25, 9:58 AM

    I find it a bit bizarre that this JEP doesn't enable Compact Object Headers by default. Most users will not know to specifically enable it, so if they're that confident in its stability and performance, why not enable it for everyone?

    The JVM used to have a reputation for requiring byzantine flags to properly optimise its performance (mostly GC configuration). We've mostly left that behind these days, but it feels like JEP 519 takes a step backwards here.

  • by hmottestad on 5/22/25, 8:47 AM

    This particular JEP is just: "Change compact object headers from an experimental feature to a product feature."

    Very good performance results though. Particularly like the json parsing benchmark showing a 10% performance improvement.

  • by kosolam on 5/22/25, 10:04 AM

    I wonder if this also improves the efficiency of native image graal built executables?