Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rubinius Euruko 2012 Lightning talk
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Dirkjan Bussink
June 01, 2012
Programming
260
2
Share
Rubinius Euruko 2012 Lightning talk
A short story about optimizing Rubinius for a web application
Dirkjan Bussink
June 01, 2012
More Decks by Dirkjan Bussink
See All by Dirkjan Bussink
Managing a widely distributed team
dbussink
1
200
Time
dbussink
0
140
The tricky truth about parallel execution and modern hardware
dbussink
0
380
The future of Ruby is faster
dbussink
3
560
Security for dummies
dbussink
1
200
The myth of dynamic language performance
dbussink
3
500
Rubinius - Tales from the trenches @ Railsclub.ru 2012
dbussink
2
230
Rubinius - Tales from the trenches @ Baruco 2012
dbussink
1
290
Rubinius Eurucamp 2012 Workshop
dbussink
2
150
Other Decks in Programming
See All in Programming
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
1.3k
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
LLM Plugin for Node-REDの利用方法と開発について
404background
0
150
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
330
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
1.9k
CLIであることを活かしたGitHub Copilot CLI活用術 / GitHub Copilot CLI Pro Tips & Tricks
nao_mk2
1
1.2k
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.3k
Migrations : C'est une question d'hygiène !
vinceamstoutz
0
2.7k
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
110
Talking to terminals (and how they talk back) (KotlinConf 2026)
jakewharton
PRO
1
170
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
140
Oxlintのカスタムルールの現況
syumai
5
920
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
240
How to train your dragon (web standard)
notwaldorf
97
6.6k
Automating Front-end Workflow
addyosmani
1370
210k
Code Review Best Practice
trishagee
74
20k
Designing for Performance
lara
611
70k
Typedesign – Prime Four
hannesfritz
42
3.1k
Mobile First: as difficult as doing things right
swwweet
225
10k
Evolving SEO for Evolving Search Engines
ryanjones
0
210
Leo the Paperboy
mayatellez
7
1.8k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
270
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
Paper Plane
katiecoart
PRO
1
50k
Transcript
Rubinius Use Ruby
Dirkjan Bussink
[email protected]
20 reqs/s 750 reqs/s
Disclaimer All these numbers are just relative for this specific
test app on Rubinius. They cannot just be extrapolated to your application DO try this at home!
None
0 10 20 30 40 10 20 30 40 50
60 70 80 90 100 requests / second Concurrent clients Requests
0 7.5 15 22.5 30 50 100 150 200 250
300 350 400 450 500 requests / second Concurrent clients Requests
None
None
class Hash def find_item(key) key_hash = key.hash ... end end
0 15 30 45 60 10 20 30 40 50
60 70 80 90 100 requests / second Concurrent clients Requests
0 7.5 15 22.5 30 50 100 150 200 250
300 350 400 450 500 requests / second Concurrent clients Requests
None
None
bool ObjectMemory::refill_slab(STATE, gc::Slab& slab) { SYNC(state); Address addr = young_->allocate_for_slab(slab_size_);
... }
0 75 150 225 300 10 20 30 40 50
60 70 80 90 100 requests / second Concurrent clients Requests
0 200 400 600 800 50 100 150 200 250
300 350 400 450 500 requests / second Concurrent clients Requests
0 200 400 600 800 50 100 150 200 250
300 350 400 450 500 requests / second Concurrent clients Requests Before 2 Before 1
None