github.com/oracle/graal

GraalVM compiles applications into native executables that start instantly, scale fast, and use fewer compute resources 🚀

Open this visualization on its own page →

Contributors

258

Lines of Code

260,428

From

2011-04-22

To

2020-12-29

About oracle/graal

GraalVM is an advanced Java-based compiler and runtime platform that compiles applications ahead of time into standalone native binaries. These compiled applications start instantly without warmup time, deliver peak performance immediately, and consume fewer computational resources than traditional Java deployments. Users can leverage GraalVM as a standard Java Development Kit within their existing development environments and tooling.

The project is organized around several core components. The Graal compiler is a modern, versatile compiler written in Java. SubstrateVM provides the framework for ahead-of-time compilation and Native Image generation. Truffle is a language implementation framework enabling the creation of new programming languages and development tools. Additional engines include Sulong for running LLVM bitcode, GraalWasm for WebAssembly programs, and Espresso, a meta-circular Java bytecode interpreter. The repository also contains TRegex, a regular expression engine serving multiple GraalVM languages, and the Ideal Graph Visualizer for analyzing compiler behavior.

GraalVM is distributed as open source under version 2 of the GNU General Public License with the Classpath Exception, the same terms used by Java itself. Individual components use varying licenses appropriate to their purpose, including the Universal Permissive License for the SDK and Truffle Framework, and BSD licenses for certain subsystems. The project maintains related repositories for language implementations like GraalJS and GraalPy, build tools, and demonstrates real-world usage through example applications and workshops.

Share this video