2023-01-01から1年間の記事一覧

YJITの性能を最大限引き出す方法

RubyのJITコンパイラYJITを開発している弊社Shopifyでは、社内で最もトラフィックが多いストアフロントのアプリにRuby 3.3 (master) をデプロイして平均レスポンスタイムが16%高速化、社内で最も大きなアプリであるモノリスにRuby 3.2をデプロイして平均レス…

RubyKaigiでJITコンパイラの書き方について発表した

RubyKaigi 2023でRuby JIT Hacking Guideというタイトルで発表してきた。 speakerdeck.com JITコンパイラを書くチュートリアル 今回の発表ではJITコンパイラが書ける人間を増やすことをゴールにしていたが、 30分という短い発表枠内では雰囲気を知ってもらう…

Mojoは「C言語のように速いPython」なのか

LLVMやSwiftを作ったChris LattnerがCEOをやっている会社が、Pythonの使用感とC言語並の性能を併せ持つ言語としてMojoをアナウンスした。 まだ手元で試せる状態でリリースされてはいないが、最大35000倍Pythonより速いという。 Mojo combines the usability …

RJIT: RubyでRubyのJITコンパイラを書いた

僕はRustでRubyのJITを書く仕事をしているのだが、去年の12月くらいから、趣味ではRubyでRubyのJITを書いている。 それまではC言語でコード生成を行なうMJITを5年くらいメンテしていたのだが、先月、Rubyで機械語を直接アセンブルするRJITに差し替えた。 git…