Hello everyone,
In the last year we’ve ported YJIT to Rust, and YJIT also now supports Arm64 CPUs (Mac M1/M2, AWS Graviton, Raspberry Pi & more) in addition to x86-64 on Mac/Linux and BSD.
I’m writing this because, as we near the 3.2 release 🎁, I really hope that YJIT will be available ✨ as part of precompiled Ruby packages and Ruby binaries, as much as possible.
In order to build CRuby with YJIT enabled, on a supported platform, you should only need to install rustc >= 1.58.0 before running the CRuby ./configure script. That is all. The configure script should auto-detect rustc and enable building YJIT.
Some instructions for installing rustc on various platforms:
# Cross-platform setup script for the Rust toolchain
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
or
# On Debian-based distros:
$ sudo apt install rustc
You can check that your ruby binary has been built with YJIT by running:
# should contain the string +YJIT
$ ruby --yjit -v
Feel free to reach out if you encounter any issues.
Happy Holidays! 🎅🎄🎁
- Maxime & the YJIT team