Ruby 3 JIT can make Rails faster

RubyKaig 2018 / The Method JIT Compiler for Ruby 2.6

"MJIT Does Not Improve Rails Performance"

Why does Rails become slower on Ruby 3’s JIT?

Is it because we use C compilers?

i-cache misses by compiling many methods?

The “compile all” magic

Sinatra Benchmark

Rails Simpler Bench

Railsbench

Discourse

Why does compiling everything make it faster?

So, should I use JIT on Rails?

Ruby 3.0.1 bug that's not in 3.0.0

Ruby 3 bug that stops compilation in the middle

Incompatibility with Zeitwerk / TracePoint

Incompatibility with GC.compact

The default value of --jit-max-cache

Scalability of "JIT compaction"

Next steps

Ruby-based JIT compiler

Faster deoptimization

Lazy stack frame push

Sponsors

https://github.com/sponsors/k0kubun

--

--

--

Software engineer at Treasure Data. https://twitter.com/k0kubun https://github.com/k0kubun https://speakerdeck.com/k0kubun

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Write once — Use everywhere in the whole project, no conditions — no modifications

5 Dead-Simple Programming Rules For Junior Developers To Write Senior Level Code Even If They Think…

File-Dir-Set-Ops — Release v0.1.0

Building a Restful API with ASP.NET Web API and SQL Server.

PyTorch / XLA is now Generally Available on Google Cloud TPUs

Working with slow backends

What Is GTM Server-side Tracking and Why Do You Need It?

Raft logs on Swarm mode

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
k0kubun

k0kubun

Software engineer at Treasure Data. https://twitter.com/k0kubun https://github.com/k0kubun https://speakerdeck.com/k0kubun

More from Medium

Class and Interface Inheritance in Ruby

Ruby on Rails debugging on Visual Studio Code

Data Encryption with Rails 7

Introduction to creating a Sinatra and Active Record.