Benefits

Running Ruby code faster

TruffleRuby is the fastest Ruby implementation for many CPU-intensive benchmarks

Learn more

Executing Ruby code in parallel

TruffleRuby runs Ruby Threads in parallel, it has no global interpreter lock for Ruby code

Learn more

Supporting C extensions

Many C extensions work out of the box, including database drivers

Learn more

Low-overhead interoperability with Java, JavaScript, Python and R

Provided by the GraalVM Polyglot API

Learn more

Maintaining high compatibility with the standard Ruby

TruffleRuby aims to be fully compatible with the standard Ruby runtime (MRI/CRuby) along with extra functionality provided by JRuby

Learn more

Providing tooling such as debuggers and monitoring

The tooling support includes a profiler, debugger, VisualVM, and more, and works across languages

Learn more

Faster Ruby with TruffleRuby and GraalVM

Optcarrot Benchmark

TruffleRuby JVM CE is 4.2x faster than CRuby 3.0 and TruffleRuby JVM EE is 8.2x faster than CRuby 3.0

optcarrot benchmark

Rubykon Benchmark

TruffleRuby JVM CE is 7.3x faster than CRuby 3.0 and TruffleRuby JVM EE is 10.6x faster than CRuby 3.0

uubykon benchmark
box

"TruffleRuby is able to run a key production Ruby application almost entirely unmodified from the standard Ruby configuration at Shopify, making it the only realistic option for migrating to a Ruby implementation with genuine potential for seriously increasing the performance and tooling of Ruby."

box

Chris Seaton

Senior Staff Engineer at Shopify

TruffleRuby

Try Examples

python benchmarking

Run your existing code unchanged, including native extensions

TruffleRuby runs Rails and is the only implementation besides CRuby to pass all RubyGems tests. Learn more →

python benchmarking

Accessing Java from Ruby

Reuse any JVM library. Learn more →

python benchmarking

Includes a Built-in Sampling Profiler and Debugger

As well as VisualVM, Flamegraphs and more. Learn more →

python benchmarking

Backtraces in C Extensions

GraalVM can execute and compile Ruby and C code together. Learn more →

Making a Difference for Real-World Applications

rack and rails faster with truffletuby play button

RubyKaigi Takeout 2020

Running Rack and Rails Faster on GraalVM with TruffleRuby

Optimizing Rack and Rails applications with a just-in-time (JIT) compiler is a challenge. For example, MJIT does not speed up Rails currently. The GraalVM team took this challenge on and now TruffleRuby achieves higher performance than any other Ruby implementation on the Rails Simpler Benchmarks. See how TruffleRuby got there and what optimizations are useful for Rack and Rails applications.

download pdfDownload presentation

Try GraalVM for Your Ruby Applications