Elide 1.0.0-beta2 Help

Performance

Elide is built on top of GraalVM and Truffle. This core difference leads to significant performance advantages, especially with regard to polyglot programming.

Elide uses GraalVM in place of V8 or JSC (used by Node/Deno and Bun, respectively).

GraalVM + Truffle

Instead of implementing just one language (V8 implements JavaScript, CPython implements Python, and so on), GraalVM and Truffle, together, constitute an abstract framework for authoring a high-performance JIT interpreter and compiler.

Languages are simply dialects (Truffle) into this shared backend (Graal). Elide wires together the APIs necessary to make this into a luxurious experience.

Some notes about why GraalVM + Truffle is so fast:

  • Graal is a state-of-the-art optimizing compiler, implementing advanced code generation and speculative optimization techniques.

  • Graal can see across language borders, enabling inlining across languages and other compiler tricks. It's all "just code" to the Graal compiler, whether it is Python, JavaScript, or something else.

  • Graal can collect garbage across borders, so pauses are minimized and cohesive.

Language Performance

Notes about pure language execution performance.

JavaScript, TypeScript, WASM

Elide is competitive with Node and Deno at execution of JavaScript, TypeScript, and WebAssembly.

Pure JS/TS startup time for Elide can be very fast:

Runtime

Language

Case

Startup (cold)

Server hit (hot)

Bun

JavaScript/TypeScript

Hello World

~6.5ms

~1.5ms

Node

JavaScript Only

Hello World

~10ms

~7ms

Deno

JavaScript Only

Hello World

~15ms

~71ms

Elide

JavaScript/TypeScript

Hello World

~20ms

~2ms

Python

Elide is competitive with modern optimizing Python runtimes like PyPy and often beats CPython. GraalPython provides continuous benchmarks upstream.

Geomean speedup over CPython
Last modified: 18 March 2025