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
Dirkjan Bussink
June 01, 2012
Programming
250
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
130
The tricky truth about parallel execution and modern hardware
dbussink
0
370
The future of Ruby is faster
dbussink
3
550
Security for dummies
dbussink
1
190
The myth of dynamic language performance
dbussink
3
490
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
140
Other Decks in Programming
See All in Programming
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
3
310
Agentic Elixir
whatyouhide
0
100
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
140
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
110
実践CRDT
tamadeveloper
0
570
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
810
GitHubCopilotCLIをはじめよう.pdf
htkym
0
180
Vibe NLP for Applied NLP
inesmontani
PRO
0
440
tRPCの概要と少しだけパフォーマンス
misoton665
2
210
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
250
NakouPAY説明用
annouim0
0
170
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
150
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
Side Projects
sachag
455
43k
Git: the NoSQL Database
bkeepers
PRO
432
67k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
290
The Spectacular Lies of Maps
axbom
PRO
1
700
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
160
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
520
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
120
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Facilitating Awesome Meetings
lara
57
6.8k
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