Erik Österlund

Erik Österlund

@eosterlund.bsky.social

OpenJDK HotSpot JVM developer at Oracle. Drinks coffee and pets cats. Opinions expressed are, unsurprisingly, my own.

553 followers217 following37 posts

Pinned

Do you trade off startup and warmup by tuning -Xms, -Xmx and -XX:+AlwaysPreTouch appropriately? And did you set -XX:+UseTransparentHugePages together with the appropriate shmem_enabled kernel config? Me neither. ”JEP 545: Faster Startup and Warmup with ZGC” is candidate now: openjdk.org/jeps/545

openjdk.orgJEP 545: Faster Startup and Warmup with ZGCImprove application startup and warmup by enhancing the Z Garbage Collector to acquire and prepare physical memory more swiftly and efficiently in response to application needs.

Erik Österlund reposted

The first part of OpenJDK’s Project Valhalla, JEP 401 (Value Objects), has been integrated into JDK 28 as a preview feature and is now available in the early-access builds. More information: openjdk.org/projects/val... #JDK28 #OpenJDK #Java

After working on ZGC for a decade, I’m happy to announce that I’m publishing a book about ZGC in JDK 25. It ships 22 May (www.taylorfrancis.com/books/mono/1...) and is being published by Taylor & Francis. You should get a copy if you want to learn more about ZGC. It’s available for pre-order now.

taylorfrancis.comThe Z Garbage Collector | In JDK 25 | Erik Österlund | Taylor & FranciThis book explains how the Z Garbage Collector was designed, why it was designed this way, the common pitfalls to avoid when using ZGC in JDK 25 and how to get

My work on ZGC automatic heap sizing is coming together beautifully. I’m increasingly happy with the GC logs. Feeling optimistic that it can beat carefully tuned manual heap sizing. A static heap size just can’t deal with dynamic behaviour shifts as well; it’s not in its nature.

Erik Österlund reposted

"In fact, we’ve found for our services and architecture that there is no such trade off. For a given CPU utilization target, ZGC improves both average and P99 latencies with equal or better CPU utilization when compared to G1." writes Netflix' Danny Thomas: netflixtechblog.com/bending-paus...

netflixtechblog.comBending pause times to your will with Generational ZGCThe surprising and not so surprising benefits of generations in the Z Garbage Collector.

I try to remove a lot of unnecessary complicated code before adding a lot of complicated code. I think of it as limiting myself to a “complexity budget”. Now I’m at the point of the cycle where it’s time to add complicated code.

You are up to date.