Ruby · Avançado · Inglês · Técnico
YJIT
Compilador JIT embutido no CRuby, escrito em Rust, que converte trechos quentes do bytecode em código de máquina. Acelera aplicações como Rails sem mudar o código.
Onde usar
Ativa-se com --yjit, com RUBY_YJIT_ENABLE=1 ou em tempo de execução. Em produção, vale medir: costuma dar ganho, em troca de mais memória.
Em código
# terminal: ruby --yjit app.rb
puts RubyVM::YJIT.enabled?
RubyVM::YJIT.enable # liga em execução
puts RubyVM::YJIT.enabled? # => trueExemplos
Enabling YJIT cut our response time by about fifteen percent.
Ligar o YJIT reduziu nosso tempo de resposta em cerca de quinze por cento.
YJIT uses more memory, so watch the container limits.
O YJIT usa mais memória, então fique de olho nos limites do container.
Cuidado
Não é um interpretador novo nem muda a semântica; é uma otimização opcional que precisa ser ligada.
Origem
Sigla de Yet Another Just-In-Time compiler.