Roman Kennke

Principal Software Engineer

Java VM Hacker, Principal Software Engineer at RedHat's OpenJDK team, Shenandoah GC project lead, Java Champion

Articles by


Shenandoah in OpenJDK 17: Sub-millisecond GC pauses

Get a closer look at how the Shenandoah garbage collector adds concurrent thread-stack processing, and reliable sub-millisecond pauses, in OpenJDK 17.


Shenandoah garbage collection in OpenJDK 16: Concurrent reference processing

Find out how Shenandoah garbage collection improves Java application latency in JDK 16, especially for applications that churn soft, weak, and phantom references.


Shenandoah GC in JDK 14, Part 2: Concurrent roots and class unloading

Discover Shenandoah GC in JDK 14's new concurrent roots processing and concurrent class unloading features and reduce GC pause time.


Shenandoah GC in JDK 14, Part 1: Self-fixing barriers

Explore the new self-fixing barriers feature added to Shenandoah GC in JDK 14, which reduce local latencies that are spent in barrier mid- and slow paths.


Shenandoah GC in JDK 13, Part 3: Architectures and operating systems

We details new developments for Shenandoah GC coming up in JDK 13 that will allow it to build and run on Solaris.


Shenandoah GC in JDK 13, Part 2: Eliminating the forward pointer word

Roman Kennke explains changes to Shenandoah GC in JDK 13, including eliminating the need for an extra word per object.


Shenandoah GC in JDK 13, Part 1: Load reference barriers

We take a look at some new developments of Shenandoah GC coming up in JDK 13, including load reference barriers.