alex_aldo - Fotolia
Oracle adds GraalVM Enterprise to Java SE subscription
Oracle's GraalVM Enterprise compiler technology is now available to developers as part of the Java SE subscription. GraalVM increases application performance.
Oracle is adding its GraalVM compiler technology at no additional cost to the Java SE subscription to help developers build microservices and do cloud-native development on the Java platform.
GraalVM is Oracle's Java-based compiler technology that provides improvements in application performance and enables nearly instantaneous microservices startup at no additional cost, said Shaun Smith, director of product management for Oracle Labs' GraalVM.
GraalVM Enterprise, which is now included in the Java SE subscription, features both a high-performance Just-in-Time (JIT) compiler, as well as an Ahead-of-Time (AOT) "native image compiler, Smith said.
A JIT compiler is a feature of the runtime interpreter that instead of interpreting bytecode every time a method is invoked, will compile the bytecode into the machine code instructions of the running machine, and then invoke this object code instead.
Meanwhile, AOT compilation is the act of compiling a higher-level programming language such as C or C++, or an intermediate representation such as Java bytecode, into a native machine code so that the resulting binary file can execute natively.
Oracle has been working on its optimizing compiler technology for 10 years in Oracle Labs, Smith said. GraalVM delivers faster execution times and lower compute requirements can reduce compute costs.
Microservices support
Popular microservices frameworks and platforms such as Spring, Micronaut, Quarkus, Tomcat, Netty and Helidon support GraalVM.
"For me, GraalVM represents an excellent route by which Java can attract developers building modern, containerized software via support for Quarkus, Micronaut and Helidon, as GraalVM allows for faster startup times and reduces runtime memory requirements," said Brad Shimmin, an analyst at Omdia.
Moreover, the work going on within GraalVM Enterprise to enable disparate languages to coexist in the same runtime is intriguing from a developer standpoint, he said.
"Though not fully baked ... GraalVM can run not just Java and Java-based languages like Scala, but also popular scripting languages like Ruby, R and Python," Shimmin said. "This together with the embeddable nature of GraalVM -- for example, it can run inside Oracle Database -- opens up a number of interesting doors for enterprise developers building AI-infused software alongside traditional server-, edge- or client-side applications."
Brad ShimminAnalyst, Omdia
Java SE subscription model
Oracle transitioned to the Java SE subscription model two years ago, which aligns with how modern procurement processes work, said Donald Smith, senior director of product management at Oracle.
The Java SE subscription is an annualized subscription with monthly based pricing. For desktop users, the price is $2.50 per user, per month. For server and cloud systems, the price is $25 per processor, per month. Tiered volume discounts are available for large enterprises and the subscription is free for organizations running on Oracle Cloud Infrastructure. The subscription also features 24x7 support and performance, stability and security updates.
The company is continually adding value to the Java SE subscription, Smith said. "We're focused on innovation of the Java platform to keep it relevant and exciting for modern application development," he said.
GraalVM Enterprise contains more than 60 compiler optimizations. It also has a lower memory footprint, higher throughput, lower CPU usage and reduced garbage collection overhead, he said.
Meanwhile, "developers working with GraalVM can organize highly efficient data structures that are accessible for hybrid-code apps written in both C and Node.js, as an example," Shimmin said. "Extending this notion to complex applications that span Java and R, could help enterprises deploy much more efficient software without having to first refactor from one language to another."