Oracle Releases GraalVM Enterprise
May 9, 2019Written by David Marshall
The GraalVM team at Oracle Labs announced the release of an Enterprise Edition of GraalVM, its “universal virtual machine” built on the global standard for enterprise-class application development, Oracle Java Standard Edition.
GraalVM Enterprise is the commercial version of the open source, polyglot JVM designed to provide higher efficiency, better isolation and greater agility for enterprises in cloud and hybrid environments. It is a multi-language virtual machine and a shared runtime that’s an extension of the JVM designed for applications written in a host of languages, including: Java, Scala, Kotlin, JavaScript, Node.js, Python, Ruby and native code. GraalVM Enterprise enables interoperability between these programming languages to allow developers to write polyglot applications.
Based on Java SE, GraalVM Enterprise Edition provides performance and security capabilities for running enterprise applications. It allows legacy applications to be modernized and new ones to be built faster. And it is positioned for use in cloud environments, with programs compiled ahead of time to improve startup times and minimize memory footprints. GraalVM Enterprise also supports microservices, functions-as-a-service, and service mesh.
A key feature of this release is a set of optimization algorithms designed to “seek out opportunities to accelerate application processing” by rearranging compiled code. Oracle claims that the addition of these and other algorithms typically provide an additional 20% application performance improvement, while at the same time reducing the memory footprint.
The company cites three examples:
- Path Duplication – specializes optimizations for each code path based on profiling
- Aggressive Method Inlining and Escape Analysis – removes more unnecessary function calls in the GraalVM Enterprise Compiler than any other compiler
- Advanced Vectorization – uses optimistic aliasing and high-level map/reduce/fill vector analysis to vectorize complex loops
Oracle is also claiming serious performance improvements in this release, citing 3x performance improvements on a wide variety of measurements rendered by the new JVM benchmarking suite called Renaissance, which is design for testing JIT compilers, garbage collectors, profilers, analyzers and other tools. The benchmark and performance results are maintained by Charles University in Prague and are available at Renaissance.dev.
Security functions in GraalVM Enterprise also address some of the common sources of security application vulnerabilities, including buffer overflows in native code. Most real-world applications in managed languages like Java include native libraries to improve performance of compute-intensive code. However, these libraries may form a back door to enable an attacker to bypass VM-level isolation features. GraalVM Enterprise includes a safe mode for native libraries, compiling portions of applications implemented in C code to use managed memory, garbage collection, and bounds checks to protect against vulnerabilities.
GraalVM Enterprise core capabilities include:
- Graal Compiler – generates compiled code to run in either JavaVM or our Native Image Virtual Machine
- GraalVM Native Image – allows scripted applications to be compiled ahead of time into a binary that runs natively on the system
- Polyglot Capabilities – supports Java, Scala, Kotlin, JavaScript, and Node.js
- Language Implementation Framework – enables implementing any language for the GraalVM environment
- LLVM Interpreter – permits native code to run in a managed environment in GraalVM Enterprise
GraalVM Enterprise is free for development and evaluation usage from the Oracle Technology Network. GraalVM Enterprise is available for purchase and is free on Oracle Cloud.
##
About the Author
David Marshall is an industry recognized virtualization and cloud computing expert, an eleven time recipient of the VMware vExpert distinction, and has been heavily involved in the industry for the past 20+ years. To help solve industry challenges, he co-founded and helped start several successful virtualization software companies such as ProTier, Surgient, Hyper9 and Vertiscale. He also spent a number of years transforming desktop virtualization while at Virtual Bridges.
David is an author of two very popular server virtualization books and the Technical Editor on Wiley’s “Virtualization for Dummies” and “VMware VI3 for Dummies” books. David authored countless articles for a number of well known technical magazines, including: InfoWorld, Virtual-Strategy and TechTarget. In 2004, he founded the oldest independent virtualization and cloud computing news site, VMblog.com, which he still operates today.
Follow David Marshall
Twitter: @vmblog
LinkedIn: https://www.linkedin.com/in/davidmarshall
Blog: http://vmblog.com