GraalVM 22.1 Documentation
Overview
Getting Started
Native Image
- Native Image
- Build Output
- Build Configuration
- Assisted Configuration with Tracing Agent
- Compatibility and Optimization Guide
- Class Initialization
- Static Images
- Command Line Options
- Hosted and Runtime Options
- Native Image C API
- Implementing Native Methods in Java with Native Image
- LLVM Backend for Native Image
- Debug Info Feature
- Points-to Analysis Reports
- Using System Properties
- Profile-Guided Optimizations
- Memory Management
- Generating Heap Dumps from Native Images
- JDK Flight Recorder (JFR) Support
- JCA Security Services
- Dynamic Proxy
- Java Native Interface (JNI)
- Reflection
- Accessing Resources
- Logging
- URL Protocols
- ARM64 Support
Reference Manuals
- Java Reference
- GraalVM Updater
- Runtime for Different Languages
- Java on Truffle (Espresso)
- JavaScript and Node.js (GraalJS)
- Differences Between Node.js and Java Embeddings
- JavaScript Compatibility
- Java Interoperability
- Migration Guide from Nashorn to GraalVM JavaScript
- Migration Guide from Rhino to GraalVM JavaScript
- Multithreading
- Node.js Runtime
- Options
- Operator Overloading
- Run GraalVM JavaScript on a Stock JDK
- ScriptEngine Implementation
- Using JavaScript Modules and Packages
- Frequently Asked Questions
- LLVM (Sulong)
- GraalPython
- FastR
- TruffleRuby
- Compatibility
- Debugging Ruby
- Runtime Configurations
- Using Ruby with GraalVM
- Installing
libssl
- Installing Make and GCC
- Installing
zlib
- Migration from JRuby to Ruby
- TruffleRuby Options and Command Line
- Polyglot Programming
- Ruby Managers and Installers
- Standalone Distribution
- Development Tools for Ruby
- Ruby Additional Functionality
- Setting up a UTF-8 Locale
- Reporting Performance Problems
- Security
- Optcarrot Example
- Frequently Asked Questions
- WebAssembly (Wasm)
- Embedding Languages in Java
- Polyglot Programming
GraalVM as a Platform
- Truffle Language Implementation Framework
- Approach to Function Inlining
- Auxiliary Engine Caching
- Branches Instrumentation
- Dynamic Object Model
- Implementing a New Language with Truffle
- Interop 2.0
- Monomorphization
- Monomorphization Use Cases
- Optimizing Truffle Interpreters
- Options
- On-Stack Replacement (OSR)
- Truffle Strings Guide
- Specialization Histogram
- Polyglot API Based Test Compatibility Kit
- Profiling Truffle Interpreters
- Reporting Polymorphic Specializations to Runtime
- Specialization Histogram
- Splitting Algorithm
- Static Object Model
- Testing DSL Specializations
- Truffle Approach to the Compilation Queue
- Truffle AOT Overview
- Truffle AOT Compilation
- Truffle Library Guide
- Truffle Language Safepoint Tutorial
- Truffle Native Function Interface
- Implement a Language
- Implement a Tool