Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
YJITのBenchmarksに貢献した話
Search
yamasaki
May 10, 2025
Programming
79
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
YJITのBenchmarksに貢献した話
深掘り!RubyKaigi 2025アフターセッション
https://tenshoku-draft.connpass.com/event/352614/
yamasaki
May 10, 2025
More Decks by yamasaki
See All by yamasaki
contributing-to-spinel
sacckey
0
860
Other Decks in Programming
See All in Programming
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
250
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
200
Verilogで学ぶCPU自作入門
uyuki234
8
4.1k
contenteditable と日本語入力に向き合う
colorful12
0
190
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
170
TechTown - Creating Composable Callables in Contemporary C++
rollbear
0
110
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
410
ActionController meets Protocol Buffers
sorah
0
240
Vue Fes Japan の “作る側”に関わってみて
naokihaba
0
150
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
250
すこし踏み込む CancellationToken
htkym
2
1.7k
残高管理から台帳サービスへの進化
artoy
1
200
Featured
See All Featured
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
430
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Six Lessons from altMBA
skipperchong
29
4.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The agentic SEO stack - context over prompts
schlessera
0
970
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
22k
Designing Experiences People Love
moore
143
24k
Transcript
YJITのBenchmarksに貢献した話
note inc. ⾃⼰紹介 Yamasaki • 2020/04⼊社 • サーバーサイドエンジニア • 個⼈開発/ピアノ/⿇雀
• sacckey 2
note inc. RubyKaigi 2025 振り返り Designed to last for next
20+ years of CRuby! 3
note inc. さっそくZJITを使ってみる % RUBY_CONFIGURE_OPTS=--enable-zjit rbenv install 3.5-dev % RUBYOPT=--enable-zjit
ruby --version ruby 3.5.0dev (2025-05-05T13:34:32Z master 3a2e56e685) +ZJIT +PRISM 4
note inc. YJITによるパフォーマンス向上 5
note inc. YJITのBenchmarks https://github.com/Shopify/yjit-bench で管理されているベンチマークプログラムの集合 https://speed.yjit.org でビジュアライズされた結果を⾒ることができる 6
note inc. 7 https://speed.yjit.org/benchmarks/bench-2025-05-08-035121.html
note inc. Ruby Boy (https://github.com/sacckey/rubyboy) Rubyで動くGame Boyのエミュレーター ruby.wasmによってブラウザでも動く https://sacckey.github.io/rubyboy/ 8
note inc. Ruby Boy実装の⾯⽩い点 • Game Boyの仕様をRubyプログラムで再現 • パフォーマンスチューニング ◦
ベンチマークプログラム • ruby.wasmを使ってブラウザ上で動かす 9
note inc. Ruby Boyのベンチマーク 10
note inc. Ruby Boyのベンチマーク結果 11
note inc. YJITのBenchmarksに使ってもらう 12
note inc. 類似の事例(Camlboy) 13 https://bench.ci.dev/ocsigen/js_of_ocaml/branch/master/benchmark/Wasm_of_ocaml?worker=autumn&ima ge=bench.Dockerfile
note inc. まとめ • Ruby BoyがYJITのベンチマークとして使われた! • ベンチマークプログラムを作って、YJIT, ZJIT使⽤時の結果を公開しよう! ◦
ベンチマークプログラムとして貢献できるかも? 14
note inc. 15 noteでは仲間を募集中です! https://note.jp/n/nc0fe1a230633 募集職種: • サーバーサイドエンジニア • 機械学習エンジニア(MLエンジニア)
• LLMエンジニア 採⽤情報
None