GraalVM 21.1 Released - What's New?
Written by Nikos Vaggalis   
Thursday, 03 June 2021

GraalVM, the runtime that compiles Java bytecode into native self-contained executables has reached version 21.1.

We had a look at GraalVM's integration with Spring Boot last March in "Compile Spring Applications To Native Images With Spring Native" as a testament to its use cases.In that case Spring Native let you compile Spring applications to native images using the GraalVM native-image compiler.

What's the advantage in that? Instant startup, instant peak performance, and reduced memory consumption, since the native Spring applications are deployed as a standalone executable without including a JVM installation.These are the advantages that the use of GraalVM brings.

However GraalVM is also a VM capable of running programs in different languages other than Java, allowing direct interoperation among them.As such you can write polyglot programms (like calling JavaScript from within a Java application) in JavaScript, Ruby, R, Python, and the native languages that use LLVM (the so called “Truffle” languages, which are the languages which interpreters are implemented with the Truffle framework),hence breaking away of just supporting languages of the JVM like Java,Scala and Kotlin.

Can't help but bring to mind the 2010 attempt of .NET DLR to bridge the CLR languages with the dynamic ones such as Python,Javascript and Rubby with their Iron-counterparts.Check Pro DLR in .NET 4.0
for a dive back in history.

It means also that GraalVM fully supports Node.js and the one included in GraalVM 21.1 has been updated to v14.16.1 but moved out of the base download and now you have to separately install it by running "gu install nodejs".

Also in this version this polyglot runtime enables the multi-tier compilation feature by default,something that improves the compilation speed and warmup for most languages.Along with it the wider support of all the Truffle languages has been also improved.

Performance improvements of tools that are part of the GraalVM distribution, such as the debugger and the profilers.For example the Java Debug Wire Protocol (JDWP) support was sped up so much that applications running under the debugger reach performance gains up to 200x!

On tooling there's a new version of the VS Code GraalVM Extensions and finally,v21.1 also comes with improvements and bug fixes on both the Compiler and Native Image front ends.

There's two GraalVM editions, GraalVM Enterprise and
GraalVM Community.Both v21.1 add support for Java 16 based on JDK 16.0.1 with the Enterprise being updated to Oracle JDK 8u291, 11.0.11 and 16.0.1, while the Community to OpenJDK 8u292, 11.0.11 and 16.0.1. Note the JDK vs OpenJDK difference.

Enterprise is free for evaluation and development with
additional performance, scalability and security over the community edition, while the Community is free for all purposes and runs any program that runs on GraalVM Enterprise.

Downloads of both versions can be found on ,while the release notes and details of GraalVM 21.1 Community can be found on GitHub.


More Information

GraalVM Release Notes on GitHub

Related Articles

Compile Spring Applications To Native Images With Spring Native

Pro DLR in .NET 4.0


To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.


GitLab 14 Offers DIY DevOps Alternative

GitLab, the web-based repository manager for Git, has been updated with improvements designed to give teams an alternative to maintaining DIY DevOps chains. GitLab supports concurrent devops and issue [ ... ]

Machine Learning Scholarship Program On Udacity

The deadline for applying for a scholarship to one of Udacity's most popular Nanodegree Programs has been extended to July 12, 2021. Apply now and gain exclusive access to a Foundations Course that co [ ... ]

More News





or email your comment to:

Last Updated ( Thursday, 03 June 2021 )