Oracle has launched GraalVM for JDK 24, a high-performance alternative Java Development Kit tailored specifically to the recently released JDK 24. The standout feature of this release is its integration of machine learning–based profile inference, which Oracle says delivers an average performance boost of 7.9% on microservices benchmarks. Designed for developers building high-performance, cloud-native Java applications, the update brings cutting-edge performance optimization capabilities to the JVM and native image compilation workflows.
A major innovation in this release is the debut of GraalNN, a new machine learning–enabled profiling system. Unlike traditional static profiling, GraalNN employs neural networks for context-sensitive inference, allowing for more accurate predictions about how applications will behave at runtime. These predictions, in turn, help the compiler make smarter decisions about optimization. Oracle reports this has led to noticeable improvements across several popular microservices frameworks, including Spring, Quarkus, and Micronaut. The underlying technology enhances Oracle GraalVM’s Native Image feature, which compiles Java applications into native executables with fast startup, low memory usage, and no warmup time.
Another important addition is SkipFlow, a new enhancement to GraalVM’s static analysis toolchain. SkipFlow extends the traditional points-to-flow analysis by tracking primitive values and evaluating branch conditions dynamically during analysis. This allows developers to produce smaller binaries without incurring additional build time. In some cases, SkipFlow can even speed up image builds by reducing the number of methods that need to be analyzed and compiled—making it a practical enhancement for teams focused on optimizing both runtime and build-time performance.
The release also marks a significant shift in how GraalVM handles Java agents. While Native Image has supported Java agents in a limited way—requiring all class transformations to occur at build time—this version begins to introduce support for agents at runtime. This opens the door for more dynamic instrumentation and monitoring use cases. Additionally, Oracle continues to refine its support for the Vector API on GraalVM. More vector operations are now efficiently compiled to SIMD (single instruction, multiple data) instructions, enabling even better performance on hardware that supports it. With these updates, GraalVM for JDK 24 positions itself as a forward-looking runtime for modern Java development.