Along with the GraalVM 24 update today, Oracle has formally released OpenJDK Java 24. JDK 24 is now out under general availability status with many new features and changes.
Some of the key highlights with today’s OpenJDK Java 24 release include:
– The Shenandoah garbage collector has gained experimental generational collection capabilities for more sustainable throughput, load-spike resilience, and lower memory utilization. This experimental generational mode for Shenandoah should also help with reducing CPU and power use. The experimental code currently works on x86_64 and AArch64 CPU architectures.
– Removing the non-generational mode from the ZGC garbage collector.
– Compacting object headers is in experimental form for reducing the HotSpot JVM object headers from 96~128 bites down to 64 bits for lowering the heap size and improving deployment density and better data locality.
– In preview form is the Key Derivation Function API as crypto algorithms for deriving additional keys from a secret key and other data.
– Dropping the Windows 32-bit x86 port following its deprecation back in OpenJDK Java 21. The entire OpenJDK 32-bit x86 port is also now considered deprecated for all platforms for future removal. In turn this is mainly about deprecating the Linux 32-bit x86 port.
– Support for Ahead-Of-Time (AOT) class loading and linking to help improve startup time.
– The Class-File API as a standard API for parsing, generating, and transforming Java class files.
– The latest iteration of the Java Vector API to express vector computations better for increased performance on modern processors.
– Quantum-Resistant Module-Lattice-Based Key Encapsulation Mechanism and Digital Signature Algorithm.
– The latest iteration of the Structured Concurrency API.
OpenJDK 24 downloads and more information on the Java 24 changes via jdk.java.net.