Skip to content

Instantly share code, notes, and snippets.

@headius
Created November 10, 2011 13:55
Show Gist options
  • Save headius/1354902 to your computer and use it in GitHub Desktop.
Save headius/1354902 to your computer and use it in GitHub Desktop.
Red/black tree benchmark across Ruby impls
# MRI 1.9.3
system ~/projects/redblack $ rvm use ruby-1.9.3
Using /Users/headius/.rvm/gems/ruby-1.9.3-p0
ruby-1.9.3-p0 ~/projects/redblack $ ruby -I. bm1.rb 10
3.275654
GC.count = 7
3.271799
GC.count = 10
3.294714
GC.count = 13
3.26915
GC.count = 14
3.23686
GC.count = 17
3.254839
GC.count = 19
3.283924
GC.count = 21
3.309012
GC.count = 24
3.249263
GC.count = 25
3.262972
GC.count = 27
# RUBINIUS MASTER (2.0)
system ~/projects/redblack $ ../rubinius/bin/rbx bm1.rb 10
1.808758
1.3058960000000002
1.250861
1.255431
1.232981
1.255242
1.230768
1.233631
1.236599
1.232121
# MACRUBY 0.10
system ~/projects/redblack $ rvm use macruby
Using /Users/headius/.rvm/gems/macruby-0.10
macruby-0.10 ~/projects/redblack $ ruby -I. bm1.rb 10
6.606055
6.010468
6.47678
6.145906
6.123577
6.132313
6.209808
6.101866
6.080672
6.204865
# MAGLEV 1.0
macruby-0.10 ~/projects/redblack $ rvm use maglev
Using /Users/headius/.rvm/gems/maglev-head
maglev-head ~/projects/redblack $ ruby -v
maglev 1.0.0 (ruby 1.8.7) (2011-10-31 rev 1.0.0-27184)[Darwin x86_64]
maglev-head ~/projects/redblack $ ruby -I. bm1.rb 10
3.789942
3.836736
3.825515
3.86706
3.852357
3.793087
3.832562
3.783813
3.754339
3.733374
# MRI 1.8.7
maglev-head ~/projects/redblack $ rvm use ruby-1.8.7
Using /Users/headius/.rvm/gems/ruby-1.8.7-p352
ruby-1.8.7-p352 ~/projects/redblack $ ruby -I. bm1.rb 10
8.223798
8.383111
8.311904
8.334715
8.704874
8.362441
8.223622
8.340476
8.302468
8.442063
# JRUBY MASTER (1.7) ON OPENJDK/HOTSPOT HEAD (roughly equivalent to 1.7.0_2 b11)
ruby-1.8.7-p352 ~/projects/redblack $ rvm use system
Now using system ruby.
system ~/projects/redblack $ jruby -v
jruby 1.7.0.dev (ruby-1.8.7-p330) (2011-11-07 8e852ac) (OpenJDK 64-Bit Server VM 1.8.0-internal) [darwin-amd64-java]
system ~/projects/redblack $ jruby bm1.rb 10
3.097
1.771
1.068
1.168
0.675
0.662
0.682
0.644
0.659
0.653
# JRUBY MASTER (1.7) ON OPENJDK 1.6.0_26
system ~/projects/redblack $ pickjdk 1
New JDK: 1.6.0.jdk
system ~/projects/redblack $ jruby bm1.rb 10
2.746
1.931
1.882
1.931
1.896
1.938
1.893
1.901
1.865
1.913
# JRUBY 1.6.5 ON OPENJDK 1.6.0_26
ruby-1.9.3-p0 ~/projects/redblack $ rvm use jruby
Using /Users/headius/.rvm/gems/jruby-1.6.5
jruby-1.6.5 ~/projects/redblack $ jruby -v
jruby 1.6.5 (ruby-1.8.7-p330) (2011-10-25 9dcd388) (Java HotSpot(TM) 64-Bit Server VM 1.6.0_26) [darwin-x86_64-java]
jruby-1.6.5 ~/projects/redblack $ jruby bm1.rb 10
2.955
1.99
1.967
1.987
1.98
1.983
1.967
1.991
2.022
2.002
jruby-1.6.5 ~/projects/redblack $ cat .git/config | grep url
url = git@github.com:headius/redblack.git
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment