TrustRadius Insights for GraalVM are summaries of user sentiment data from TrustRadius reviews and, when necessary, third party data sources.
Pros
Reduced Memory Footprint: Users have consistently praised GraalVM for its ability to reduce memory consumption, resulting in efficient performance and lower hardware requirements. This has led to smoother application execution and enhanced resource management.
Faster Application Startup Times: Reviewers have highlighted the tool's capability to significantly improve application startup speed, leading to quicker deployment cycles and better responsiveness in real-time environments.
Support for Multiple Programming Languages: Many users appreciate GraalVM's flexibility in supporting various programming languages, enabling developers to choose the most suitable language for their projects. This versatility allows for seamless integration of different language components within applications, enhancing overall development productivity.
GraalVM is a high-performer runtime that provides significant improvements in application performance and efficiency which is a deal for microservices. [It's] designed for application writing in Java, JavaScript, LLVM-based languages such as C and C++. It helps to do away with isolation between programming languages and enables interoperability in a shared runtime. I love that it can run either standalone or in the context of OpenJDK,Node.js or Oracle Database.
Pros
Run Java Faster, GraalVM can run in the context of OpenJDK to make Java applications run faster with a new just-in-time compilation technology.
Make Application Extensible, GraalVM enables running JavaScript, R, Python, Ruby, LLVM IR, and Web Assembly in the context of Java Data Applications.
Create a Native Image, running [an] application inside a Java VM comes with startup and footprint costs.
Cons
Documentation is not that well detailed up to date.
The customer support is not always available.
Likelihood to Recommend
Its well fit for the environment where applications are written in programming languages supported by GraalVM. It's [a] very powerful and reliable, high-performer Java Virtual Machine that provides the Java Development kit i.e JDK that has the ability to compile the Java apps ahead of time. Maintenance of this tool is simple and it [increases] the efficiency of the product since it requires few resources.
I am an Indie developer and use GraalVM for daily development, mainly for replacing OpenJDK with it. [...] I use GraalVM to build other open-source projects that once use OpenJDK. [...]
Pros
[Building] AI related projects that using programming languages on JVM.
Accelerate Scala-based projects with native image.
[...]
Cons
The download speed for prebuilt binaries of GraalVM CE on Github is slow, and I hope more download mirrors for GraalVM could be provided, maybe directly from its home site www.graalvm.org is a good idea.
Hope to add built-in support OpenCL within GraalVM for heterogeneous parallel computing.
Hope to add support for running GraalVM on RISC-V.
Likelihood to Recommend
GraalVM is well suited for developers who are not familiar with C++ that mainly used by OpenJDK, but really [want] to demystify the internal[s] of JVM and [customize] it for personal usage, as GraalVM is meta-circular and its Java code is much more understandable when [compared] with that of OpenJDK.
We are using GraalVM in order to run some on-premises servers and to test part of our solutions. I'd say it's also a perfect tool to be used by Java developers. This tool usage made us reach a new step in terms of quality tests and brought us more options.
Pros
Multilingual
Speed
Usability
Cons
Still missing some languages (DEV)
Looks like they still having something being developed
Likelihood to Recommend
If you want to have a cool VM, don't spend too much memory and mainly being multilanguage go ahead. Be aware there are some points that can be improved like a couple of languages are not accepted so far. Like used to, it's easy to use and you can find a lot of information regarding the tool so if you need to do something fast, it's a good choice.
VU
Verified User
Employee in Information Technology (Computer Software company, 11-50 employees)
GraalVM is being used as a preferred virtual machine by Java developers at our organization to reduce the size of applications and loading time and to improve the cold-start time for achieving the best performance of applications with high efficiency while consuming fewer resources. It improves the capability of hardware to perform well with an increased number of applications. The developers using Python, Node.JS, C, and Oracle at our organization are also using it.
Pros
Best performance of applications
High efficiency of applications
Reduced hardware requirements
Lesser consumption of resources
Universal support to multiple programming languages
Reduced size of applications
Creation of virtual images for testing on Android and iOS mobile operating systems
Creation of native images
Excellent support
Documentations are detailed enough to learn and use easily
Easy to use
Cons
Unavailability of installer makes installation a hassle
Compiling natives for non-Java faces problem with dependencies
Likelihood to Recommend
I recommend GraalVM to my colleagues and other developers as the best virtual machine not only for Java but also for various programming languages to speed up development time and develop applications with enhanced performance and efficiency. It also reduces the size of an application and its cold-start time.
Our organization uses GraalVM to provide a standardized and optimized environment to run Java and Scala applications. This is used across departments for multiple enterprise Java solutions. GraalVM provides our organization with a Java development and deployment environment that is quick to set up for new developers and quick to configure for the deployment of new applications. With the performance enhancements that it provides, such as ahead-of-time compilation, we have found that GraalVM provides an optimum solution for running our enterprise Java applications effectively.
Pros
Standardizing Java dev environment
Making deployed applications more maintainable
Reusable environments for developers
Positive performance gain
Quick deployment cycles
Cons
Difficult to migrate legacy applications to use GraalVM
Initial setup for Java binaries can be difficult
Some configuration options can be obscure at times
Likelihood to Recommend
GraalVM is very well suited for containerizing and running Java applications, thanks to its JIT compilation mechanisms and native Java support. If you have a modern Java application using a framework such as Spring Boot, GraalVM is a good solution to standardize your environment while making use of the optimizations provided for Java applications so that you can reduce metrics such as start up time and response time. However, if you are planning to port a legacy Java application to run on GraalVM, it may be quite difficult to find appropriate binaries for the libraries you are using.
We are in an investigative stage with GraalVM and AOT (native-compile) at the department level (software engineering and SecDevOps). We have deployed test applications written in Java and Scala to Windows, Ubuntu, and as Docker images running on container services (Google Cloud Run and Kubernetes).
At this point, I am very impressed. There was a learning curve to understand GraalVM, the polyglot features, and native-compiles. Pluralsight has a good fundamentals overview. The home site for GraalVM has a number of good "getting started" guides.
The areas that we are seeing major impacts in are software size, load time, and cold start time. These are critical benefits as we try to minimize the size of our containers and reduce cold-start time. The end result is more container services can be deployed with the same hardware. This could have a significant financial benefit over running code in a JVM.
We are also investigating the Polyglot features, such as running Node.js and Python in GraalVM. The ability to combine Java and Node.js could present some interesting features to combine the best of our libraries.
In my opinion, this product and technology will significantly improve the performance and footprint of Java-based containers to serverless containers, Kubernetes, and OpenShift.
Pros
Reducing software cold start time
AOT--Native compile, which removes the dependency on the JRE and JVM
Reduces application size. Combining native-compile and EXE compression significantly reduces the size of our containers
Cons
Native compiles. We have problems figuring out how to package jars with all dependencies for compilation. This might be our problem as we progress through the learning curve.
More support and testing for Sprint and GraalVM.
I recommend providing installer packages instead of downloading zip files.
Likelihood to Recommend
In my opinion, GraalVM is an amazing technology for deploying containers. There are many benefits of integrating GraalVM into our development and deployment processes:
Reduced application size.
Faster cold start, which improves HTTP request/response-based software.
Native compiles dramatically simplifies building and deploying Java-based containers.
Native compiles often significantly improves application performance.
The organization has been recently expanding to game servers for Java games. The main issue with Java games is the lack of language interoperability with the default JVM, therefore other developers have a hard time working with them. But with GraalVM it allows almost seamless interoperability with other languages. LLVM-based languages ones especially are great with GraalVM.
Pros
Language Interoperability
Ahead of Time compilation
Portability
Cross-platform
Great Support
Cons
Requires a separate download to use
Unavailable with the current JDK versions
Requires users to specifically use GraalVM to use our server platform
Likelihood to Recommend
I will recommend GraalVM to anyone who wants a blazing fast modern JVM with seamless language interoperability. It's AOT methods also speed ups programs to a degree, which means it also is good just as a drop in replacement for the default JVM. However I cannot recommend GraalVM to those who want to use the latest Java features as GraalVM doesn't have them.
VU
Verified User
Contributor in Information Technology (Computer Games company, 1-10 employees)
GraalVM is being used by my organization to create a language-agnostic mod loader based on the Fabric API for Minecraft. It addresses a lot of problems with normal Java Native Interface Interop, and also makes it really easy to integrate numerous languages into the system.
The problem with normal JNIs is how hard it is to implement Mixins and other features, with GraalVM this is very easy and performant. GraalVM's performance is also outstanding, making it faster to launch dev environments and other factors.
Pros
Language Interop
Performance
Availability
Open Source
Ease of Use
Cons
JDK version is low
Lacks some features like ZGC
JNI is sometimes faster
Likelihood to Recommend
GraalVM is well suited for situations where one will want seamless language interop and a codebase with different languages. It is not appropriate for a project that is not entirely based on Java before, and also just a single language.
Other scenarios would be to take advantage of GraalVMs AOT features where performance is needed.
VU
Verified User
Contributor in Engineering (Computer Games company, 1-10 employees)
GraalVM is being used as a Java Virtual Machine. It is currently being used in our data department within our IT organization. GraalVM has helped with issues regarding performance and optimization. My coworkers and I are pretty satisfied with the capabilities of GraalVM, as it helps for Java to run in a faster manner.
Pros
Multiple languages
Minimal memory
Open source
Cons
Visibility of roadmap
Likelihood to Recommend
GraalVM is good for when you have multiple programming languages that you need to support. It also does quite a good job in performance and optimization. It is good at empowering developers. I could caution that not all programming languages are supported so you may need to check the documentation first before adopting it.
VU
Verified User
Analyst in Information Technology (Computer Software company, 10,001+ employees)