Last active
December 13, 2015 21:28
-
-
Save hosiawak/4977121 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
karol@brenta:~/projects/personal/rubinius (master) $ ./bin/benchmark -t ./bin/rbx -t ^jruby-head benchmark/core/float/ | |
Found rvm-managed ruby: jruby-head | |
=== ./bin/rbx === | |
Float + Float => Float | |
39686069.1 (±1.8%) i/s - 198278330 in 4.997819s (cycle=150782) | |
Float + Fixnum => Float | |
39260502.9 (±1.3%) i/s - 196248960 in 4.999449s (cycle=204426) | |
Float + Bignum => Float | |
17241576.8 (±1.4%) i/s - 86161361 in 4.998290s (cycle=186901) | |
Float <=> Float 61874317.8 (±2.2%) i/s - 309180168 in 4.999567s (cycle=203676) | |
Float <=> Fixnum 61898141.4 (±2.3%) i/s - 309268470 in 4.999115s (cycle=205494) | |
Float <=> Bignum 19901832.8 (±1.5%) i/s - 99573075 in 5.004352s (cycle=189663) | |
Float / Float => Float | |
39669864.3 (±1.5%) i/s - 198293235 in 4.999665s (cycle=200905) | |
Float / Fixnum => Float | |
41078866.7 (±1.7%) i/s - 205195424 in 4.996614s (cycle=201964) | |
Float / Bignum => Float | |
17700954.5 (±1.4%) i/s - 88477724 in 4.999487s (cycle=179468) | |
Float == Float 63452062.1 (±1.6%) i/s - 317151174 in 4.999567s (cycle=200983) | |
Float == Fixnum 59835297.2 (±1.7%) i/s - 299150280 in 5.001070s (cycle=201448) | |
Float == Bignum 21323918.2 (±1.2%) i/s - 106649092 in 5.002060s (cycle=184514) | |
Float >= Float 62129663.4 (±1.7%) i/s - 310431702 in 4.998034s (cycle=199763) | |
Float >= Fixnum 62072426.6 (±1.8%) i/s - 310182048 in 4.998797s (cycle=195822) | |
Float >= Bignum 21018901.0 (±1.2%) i/s - 105042201 in 4.998245s (cycle=187241) | |
Float > Float 61989772.7 (±1.6%) i/s - 309866534 in 5.000030s (cycle=203458) | |
Float > Fixnum 61637992.0 (±1.7%) i/s - 308006688 in 4.998543s (cycle=204384) | |
Float > Bignum 20860300.8 (±1.2%) i/s - 104320700 in 5.001655s (cycle=189674) | |
Float <= Float 62202919.9 (±2.0%) i/s - 310813750 in 4.998789s (cycle=200525) | |
Float <= Fixum 59955588.3 (±1.5%) i/s - 299734772 in 5.000481s (cycle=204179) | |
Float <= Bignum 21006844.4 (±1.1%) i/s - 104973750 in 4.997769s (cycle=188125) | |
Float < Float 61809616.4 (±1.7%) i/s - 308983869 in 5.000389s (cycle=202347) | |
Float < Fixum 61434689.2 (±2.4%) i/s - 306958300 in 4.999495s (cycle=198550) | |
Float < Bignum 20170565.1 (±1.5%) i/s - 100806870 in 4.998788s (cycle=181634) | |
Float % Float => Float | |
31579075.4 (±1.5%) i/s - 157841810 in 4.999484s (cycle=206870) | |
Float % Fixnum => Float | |
33639804.4 (±1.6%) i/s - 168235314 in 5.002397s (cycle=201721) | |
Float % Bignum => Float | |
14707324.3 (±1.2%) i/s - 73678221 in 5.010397s (cycle=190383) | |
Float * Float => Float | |
41079154.2 (±1.8%) i/s - 205382448 in 5.001345s (cycle=208722) | |
Float * Fixnum => Float | |
39106160.8 (±1.8%) i/s - 195350800 in 4.997030s (cycle=207820) | |
Float * Bignum => Float | |
17628180.7 (±1.3%) i/s - 88254012 in 5.007261s (cycle=191026) | |
- Float 43136428.6 (±1.8%) i/s - 215558896 in 4.998818s (cycle=206672) | |
Float ** Float => Float | |
16480654.1 (±1.1%) i/s - 82497803 in 5.006375s (cycle=178181) | |
Float ** Fixnum => Float | |
14308405.9 (±1.0%) i/s - 71688729 in 5.010777s (cycle=179671) | |
Float - Float => Float | |
39609422.5 (±1.8%) i/s - 197926638 in 4.998532s (cycle=204893) | |
Float - Fixnum => Float | |
41110384.2 (±1.7%) i/s - 205470265 in 4.999495s (cycle=205265) | |
Float - Bignum => Float | |
17445532.3 (±1.3%) i/s - 87294800 in 5.004695s (cycle=190600) | |
=== /Users/karol/.rvm/rubies/jruby-head/bin/ruby === | |
Float + Float => Float | |
12954901.3 (±6.3%) i/s - 64433509 in 4.997000s (cycle=139769) | |
Float + Fixnum => Float | |
12122957.1 (±4.7%) i/s - 60513786 in 5.003001s (cycle=163994) | |
Float + Bignum => Float | |
8298297.5 (±5.0%) i/s - 41400810 in 5.003000s (cycle=148390) | |
Float <=> Float 12375804.4 (±4.0%) i/s - 61825620 in 5.004000s (cycle=162699) | |
Float <=> Fixnum 11348776.6 (±4.7%) i/s - 56653431 in 5.003000s (cycle=157809) | |
Float <=> Bignum 7860833.8 (±4.4%) i/s - 39221325 in 5.001000s (cycle=148005) | |
Float / Float => Float | |
9218792.0 (±4.6%) i/s - 46012846 in 5.002000s (cycle=159214) | |
Float / Fixnum => Float | |
11451878.7 (±4.8%) i/s - 57180956 in 5.005000s (cycle=158396) | |
Float / Bignum => Float | |
7801422.2 (±3.8%) i/s - 38972392 in 5.003000s (cycle=148184) | |
Float == Float 12531626.5 (±4.7%) i/s - 62481150 in 4.997000s (cycle=161450) | |
Float == Fixnum 11499839.5 (±7.9%) i/s - 57088848 in 5.001000s (cycle=157704) | |
Float == Bignum 8343989.0 (±4.8%) i/s - 41640750 in 5.004000s (cycle=149250) | |
Float >= Float 12465068.0 (±5.7%) i/s - 62115200 in 5.005000s (cycle=155288) | |
Float >= Fixnum 12254396.0 (±4.4%) i/s - 61163802 in 5.001000s (cycle=158046) | |
Float >= Bignum 8064669.7 (±6.0%) i/s - 40073590 in 4.992000s (cycle=144670) | |
Float > Float 12155870.7 (±6.6%) i/s - 60345863 in 4.991000s (cycle=157561) | |
Float > Fixnum 9507868.4 (±3.7%) i/s - 47481408 in 5.001000s (cycle=152184) | |
Float > Bignum 8142246.3 (±6.8%) i/s - 40498380 in 5.002000s (cycle=149994) | |
Float <= Float 12119812.1 (±4.4%) i/s - 60455052 in 4.998000s (cycle=159934) | |
Float <= Fixum 12484568.9 (±4.5%) i/s - 62296178 in 5.000000s (cycle=163079) | |
Float <= Bignum 8437181.0 (±4.0%) i/s - 42164938 in 5.006000s (cycle=139619) | |
Float < Float 11468403.1 (±3.9%) i/s - 57265050 in 5.001000s (cycle=161310) | |
Float < Fixum 11626830.1 (±4.7%) i/s - 58037248 in 5.005000s (cycle=160768) | |
Float < Bignum 8250853.6 (±3.6%) i/s - 41225016 in 5.003000s (cycle=149366) | |
Float % Float => Float | |
2628434.3 (±4.5%) i/s - 13184500 in 5.033000s (cycle=105476) | |
Float % Fixnum => Float | |
2514900.8 (±1.7%) i/s - 12595890 in 5.010000s (cycle=103245) | |
Float % Bignum => Float | |
4410551.6 (±2.4%) i/s - 22141350 in 5.023000s (cycle=126522) | |
Float * Float => Float | |
12127459.8 (±4.1%) i/s - 60529612 in 5.000000s (cycle=160556) | |
Float * Fixnum => Float | |
12100750.7 (±4.0%) i/s - 60368680 in 4.997000s (cycle=160555) | |
Float * Bignum => Float | |
6923608.3 (±4.8%) i/s - 34567620 in 5.004000s (cycle=150294) | |
- Float 12981108.7 (±5.0%) i/s - 64726740 in 4.999000s (cycle=162630) | |
Float ** Float => Float | |
4846909.3 (±2.8%) i/s - 24235002 in 5.004000s (cycle=122399) | |
Float ** Fixnum => Float | |
4813804.6 (±2.8%) i/s - 24068682 in 5.004000s (cycle=121559) | |
Float - Float => Float | |
10354163.8 (±5.3%) i/s - 51551185 in 4.993000s (cycle=150295) | |
Float - Fixnum => Float | |
11115704.4 (±4.1%) i/s - 55419966 in 4.994000s (cycle=155238) | |
Float - Bignum => Float | |
7725603.2 (±3.7%) i/s - 38551863 in 4.997000s (cycle=144389) | |
Comparing benchmark/core/float//bench_mul.rb:Float * Fixnum => Float: | |
./bin/rbx: 39106160 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12100750 i/s - 3.23x slower | |
Comparing benchmark/core/float//bench_lt.rb:Float < Bignum: | |
./bin/rbx: 20170565 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 8250853 i/s - 2.44x slower | |
Comparing benchmark/core/float//bench_le.rb:Float <= Bignum: | |
./bin/rbx: 21006844 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 8437181 i/s - 2.49x slower | |
Comparing benchmark/core/float//bench_add.rb:Float + Float => Float: | |
./bin/rbx: 39686069 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12954901 i/s - 3.06x slower | |
Comparing benchmark/core/float//bench_neg.rb:- Float: | |
./bin/rbx: 43136428 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12981108 i/s - 3.32x slower | |
Comparing benchmark/core/float//bench_div.rb:Float / Fixnum => Float: | |
./bin/rbx: 41078866 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 11451878 i/s - 3.59x slower | |
Comparing benchmark/core/float//bench_gt.rb:Float > Float: | |
./bin/rbx: 61989772 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12155870 i/s - 5.10x slower | |
Comparing benchmark/core/float//bench_cmp.rb:Float <=> Float: | |
./bin/rbx: 61874317 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12375804 i/s - 5.00x slower | |
Comparing benchmark/core/float//bench_div.rb:Float / Bignum => Float: | |
./bin/rbx: 17700954 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 7801422 i/s - 2.27x slower | |
Comparing benchmark/core/float//bench_div.rb:Float / Float => Float: | |
./bin/rbx: 39669864 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 9218792 i/s - 4.30x slower | |
Comparing benchmark/core/float//bench_le.rb:Float <= Fixum: | |
./bin/rbx: 59955588 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12484568 i/s - 4.80x slower | |
Comparing benchmark/core/float//bench_pow.rb:Float ** Float => Float: | |
./bin/rbx: 16480654 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 4846909 i/s - 3.40x slower | |
Comparing benchmark/core/float//bench_add.rb:Float + Fixnum => Float: | |
./bin/rbx: 39260502 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12122957 i/s - 3.24x slower | |
Comparing benchmark/core/float//bench_mul.rb:Float * Bignum => Float: | |
./bin/rbx: 17628180 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 6923608 i/s - 2.55x slower | |
Comparing benchmark/core/float//bench_mul.rb:Float * Float => Float: | |
./bin/rbx: 41079154 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12127459 i/s - 3.39x slower | |
Comparing benchmark/core/float//bench_gt.rb:Float > Bignum: | |
./bin/rbx: 20860300 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 8142246 i/s - 2.56x slower | |
Comparing benchmark/core/float//bench_add.rb:Float + Bignum => Float: | |
./bin/rbx: 17241576 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 8298297 i/s - 2.08x slower | |
Comparing benchmark/core/float//bench_lt.rb:Float < Float: | |
./bin/rbx: 61809616 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 11468403 i/s - 5.39x slower | |
Comparing benchmark/core/float//bench_pow.rb:Float ** Fixnum => Float: | |
./bin/rbx: 14308405 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 4813804 i/s - 2.97x slower | |
Comparing benchmark/core/float//bench_gt.rb:Float > Fixnum: | |
./bin/rbx: 61637992 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 9507868 i/s - 6.48x slower | |
Comparing benchmark/core/float//bench_mod.rb:Float % Float => Float: | |
./bin/rbx: 31579075 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 2628434 i/s - 12.01x slower | |
Comparing benchmark/core/float//bench_cmp.rb:Float <=> Fixnum: | |
./bin/rbx: 61898141 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 11348776 i/s - 5.45x slower | |
Comparing benchmark/core/float//bench_sub.rb:Float - Bignum => Float: | |
./bin/rbx: 17445532 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 7725603 i/s - 2.26x slower | |
Comparing benchmark/core/float//bench_sub.rb:Float - Fixnum => Float: | |
./bin/rbx: 41110384 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 11115704 i/s - 3.70x slower | |
Comparing benchmark/core/float//bench_eql.rb:Float == Float: | |
./bin/rbx: 63452062 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12531626 i/s - 5.06x slower | |
Comparing benchmark/core/float//bench_ge.rb:Float >= Fixnum: | |
./bin/rbx: 62072426 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12254395 i/s - 5.07x slower | |
Comparing benchmark/core/float//bench_mod.rb:Float % Fixnum => Float: | |
./bin/rbx: 33639804 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 2514900 i/s - 13.38x slower | |
Comparing benchmark/core/float//bench_cmp.rb:Float <=> Bignum: | |
./bin/rbx: 19901832 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 7860833 i/s - 2.53x slower | |
Comparing benchmark/core/float//bench_eql.rb:Float == Bignum: | |
./bin/rbx: 21323918 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 8343988 i/s - 2.56x slower | |
Comparing benchmark/core/float//bench_ge.rb:Float >= Bignum: | |
./bin/rbx: 21018900 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 8064669 i/s - 2.61x slower | |
Comparing benchmark/core/float//bench_ge.rb:Float >= Float: | |
./bin/rbx: 62129663 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12465067 i/s - 4.98x slower | |
Comparing benchmark/core/float//bench_mod.rb:Float % Bignum => Float: | |
./bin/rbx: 14707324 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 4410551 i/s - 3.33x slower | |
Comparing benchmark/core/float//bench_sub.rb:Float - Float => Float: | |
./bin/rbx: 39609422 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 10354163 i/s - 3.83x slower | |
Comparing benchmark/core/float//bench_lt.rb:Float < Fixum: | |
./bin/rbx: 61434689 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 11626830 i/s - 5.28x slower | |
Comparing benchmark/core/float//bench_le.rb:Float <= Float: | |
./bin/rbx: 62202919 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 12119812 i/s - 5.13x slower | |
Comparing benchmark/core/float//bench_eql.rb:Float == Fixnum: | |
./bin/rbx: 59835297 i/s | |
/Users/karol/.rvm/rubies/jruby-head/bin/ruby: 11499839 i/s - 5.20x slower |
These numbers are running JRuby interpreted. Here's the actual numbers. tl;dr: JRuby is generally faster. The cases that aren't, I probably haven't looked at optimizing.
Also, the benchmark/ips included in Rubinius does not do a separate warmup before running actual numbers, so later results can be skewed. Minor detail, though.
ext-jruby-local ~/projects/rubinius $ JRUBY_OPTS="-X+C -Xcompile.invokedynamic=true" ./bin/benchmark -t ./bin/rbx -t ^ext-jruby-local benchmark/core/float
Found rvm-managed ruby: ext-jruby-local
=== ./bin/rbx ===
Float + Float => Float
33747530.7 (±4.6%) i/s - 168063706 in 4.991692s (cycle=114641)
Float + Fixnum => Float
33262937.5 (±4.3%) i/s - 165743236 in 4.992955s (cycle=184364)
Float + Bignum => Float
15449460.7 (±3.2%) i/s - 77227020 in 5.004016s (cycle=143013)
Float <=> Float 53266551.0 (±3.2%) i/s - 265979472 in 4.998380s (cycle=176496)
Float <=> Fixnum 53535265.8 (±3.8%) i/s - 267098479 in 4.997288s (cycle=190921)
Float <=> Bignum 18382952.4 (±2.9%) i/s - 91855338 in 5.001085s (cycle=160306)
Float / Float => Float
34724913.0 (±3.5%) i/s - 173331840 in 4.999081s (cycle=186780)
Float / Fixnum => Float
35427932.0 (±4.7%) i/s - 176494440 in 4.995381s (cycle=198755)
Float / Bignum => Float
16219855.0 (±4.3%) i/s - 81004584 in 5.005815s (cycle=165993)
Float == Float 54254686.8 (±3.7%) i/s - 270692714 in 4.996747s (cycle=201109)
Float == Fixnum 51329105.9 (±3.0%) i/s - 256245760 in 4.996771s (cycle=200192)
Float == Bignum 17293442.5 (±8.8%) i/s - 85424286 in 4.996610s (cycle=164594)
Float >= Float 53136154.8 (±3.1%) i/s - 265299450 in 4.997710s (cycle=192525)
Float >= Fixnum 53583594.2 (±3.2%) i/s - 267457586 in 4.996389s (cycle=202466)
Float >= Bignum 18315962.2 (±2.6%) i/s - 91575805 in 5.003123s (cycle=168029)
Float > Float 55027062.4 (±3.6%) i/s - 274583758 in 4.997842s (cycle=201013)
Float > Fixnum 53690281.2 (±4.0%) i/s - 267859300 in 4.998079s (cycle=199895)
Float > Bignum 17755650.8 (±3.6%) i/s - 88707723 in 5.003102s (cycle=166431)
Float <= Float 55114580.1 (±3.7%) i/s - 275157450 in 5.000221s (cycle=197955)
Float <= Fixum 51971569.6 (±3.4%) i/s - 259523418 in 4.999547s (cycle=199941)
Float <= Bignum 18129216.6 (±2.8%) i/s - 90526107 in 4.997227s (cycle=156891)
Float < Float 53944543.8 (±3.6%) i/s - 269258208 in 4.998423s (cycle=198568)
Float < Fixum 54120737.9 (±3.4%) i/s - 270260676 in 4.999860s (cycle=196983)
Float < Bignum 17465748.0 (±3.0%) i/s - 87322270 in 5.004832s (cycle=164759)
Float % Float => Float
25522101.3 (±3.1%) i/s - 127385664 in 4.996982s (cycle=189562)
Float % Fixnum => Float
25134238.5 (±2.5%) i/s - 125636270 in 5.001854s (cycle=190070)
Float % Bignum => Float
13439496.4 (±2.4%) i/s - 67233312 in 5.005713s (cycle=158944)
Float * Float => Float
34643933.0 (±4.0%) i/s - 172823605 in 4.997811s (cycle=193099)
Float * Fixnum => Float
33721110.7 (±6.7%) i/s - 167301900 in 4.998085s (cycle=189900)
Float * Bignum => Float
14064415.1 (±5.3%) i/s - 70168099 in 5.004313s (cycle=158393)
- Float 36550027.4 (±5.6%) i/s - 181858992 in 4.992707s (cycle=181496)
Float ** Float => Float
13825494.8 (±2.3%) i/s - 69184050 in 5.006758s (cycle=156525)
Float ** Fixnum => Float
11818951.7 (±4.0%) i/s - 58971461 in 4.997916s (cycle=147061)
Float - Float => Float
35072372.7 (±3.0%) i/s - 175084072 in 4.996629s (cycle=186856)
Float - Fixnum => Float
33531197.0 (±3.3%) i/s - 167489520 in 5.000882s (cycle=190329)
Float - Bignum => Float
15863398.0 (±2.9%) i/s - 79242636 in 4.999749s (cycle=156606)
=== /Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby ===
Float + Float => Float
45431720.9 (±15.4%) i/s - 219062340 in 4.956000s (cycle=173859)
Float + Fixnum => Float
54623720.6 (±12.7%) i/s - 267421440 in 4.978001s (cycle=253240)
Float + Bignum => Float
16692215.7 (±5.5%) i/s - 83208642 in 5.001000s (cycle=222483)
Float <=> Float 41891146.9 (±8.7%) i/s - 206911768 in 4.978000s (cycle=249592)
Float <=> Fixnum 44662883.2 (±10.5%) i/s - 219238260 in 4.969001s (cycle=251998)
Float <=> Bignum 15127834.9 (±5.6%) i/s - 75468464 in 5.007000s (cycle=200714)
Float / Float => Float
66116471.7 (±11.9%) i/s - 324040896 in 4.976001s (cycle=266481)
Float / Fixnum => Float
55700188.2 (±12.7%) i/s - 272525589 in 4.974000s (cycle=254459)
Float / Bignum => Float
16721377.7 (±5.5%) i/s - 83224304 in 4.993000s (cycle=226153)
Float == Float 60003456.0 (±14.9%) i/s - 291753534 in 4.974000s (cycle=226869)
Float == Fixnum 52804419.6 (±12.6%) i/s - 259243695 in 4.991000s (cycle=250477)
Float == Bignum 16289180.6 (±5.7%) i/s - 81115200 in 4.997000s (cycle=225320)
Float >= Float 60736640.4 (±10.2%) i/s - 298747980 in 4.980001s (cycle=252108)
Float >= Fixnum 52742439.9 (±11.5%) i/s - 258601312 in 4.982000s (cycle=227642)
Float >= Bignum 16479481.3 (±5.6%) i/s - 82089230 in 4.998000s (cycle=224902)
Float > Float 60716398.4 (±15.6%) i/s - 294591245 in 4.974999s (cycle=224365)
Float > Fixnum 52836838.4 (±11.9%) i/s - 259535048 in 4.982000s (cycle=252466)
Float > Bignum 16116137.8 (±8.2%) i/s - 79640359 in 4.990000s (cycle=204731)
Float <= Float 60704029.5 (±10.9%) i/s - 295317330 in 4.983000s (cycle=255686)
Float <= Fixum 51340789.1 (±10.5%) i/s - 252945915 in 4.982001s (cycle=254217)
Float <= Bignum 16418150.4 (±5.3%) i/s - 81769884 in 4.994999s (cycle=220404)
Float < Float 60244597.9 (±10.4%) i/s - 296542956 in 4.986000s (cycle=253023)
Float < Fixum 51473179.3 (±11.1%) i/s - 253055458 in 4.976000s (cycle=248581)
Float < Bignum 16401942.5 (±5.1%) i/s - 81753426 in 4.998000s (cycle=221554)
Float % Float => Float
2952338.4 (±1.9%) i/s - 14839151 in 5.028000s (cycle=136139)
Float % Fixnum => Float
2876664.6 (±2.4%) i/s - 14414652 in 5.014000s (cycle=133469)
Float % Bignum => Float
5692175.9 (±6.7%) i/s - 28358100 in 5.018000s (cycle=175050)
Float * Float => Float
67006710.8 (±14.5%) i/s - 326890770 in 4.977001s (cycle=254985)
Float * Fixnum => Float
58219989.6 (±12.0%) i/s - 285981673 in 4.990999s (cycle=255113)
Float * Bignum => Float
16522004.6 (±5.3%) i/s - 82345460 in 4.999000s (cycle=225604)
- Float 78319402.7 (±15.4%) i/s - 380226898 in 4.966000s (cycle=232697)
Float ** Float => Float
6462567.0 (±3.4%) i/s - 32376354 in 5.016000s (cycle=186071)
Float ** Fixnum => Float
6461707.1 (±2.7%) i/s - 32322850 in 5.006000s (cycle=184702)
Float - Float => Float
64530444.4 (±13.3%) i/s - 314448318 in 4.965000s (cycle=253179)
Float - Fixnum => Float
54420898.5 (±14.6%) i/s - 263649775 in 4.982999s (cycle=249905)
Float - Bignum => Float
16885430.5 (±5.2%) i/s - 84102375 in 4.995000s (cycle=224273)
Comparing benchmark/core/float/bench_lt.rb:Float < Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 60244597 i/s
./bin/rbx: 53944543 i/s - 1.12x slower
Comparing benchmark/core/float/bench_lt.rb:Float < Fixum:
./bin/rbx: 54120737 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 51473179 i/s - 1.05x slower
Comparing benchmark/core/float/bench_lt.rb:Float < Bignum:
./bin/rbx: 17465747 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16401942 i/s - 1.06x slower
Comparing benchmark/core/float/bench_neg.rb:- Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 78319402 i/s
./bin/rbx: 36550027 i/s - 2.14x slower
Comparing benchmark/core/float/bench_cmp.rb:Float <=> Float:
./bin/rbx: 53266550 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 41891146 i/s - 1.27x slower
Comparing benchmark/core/float/bench_cmp.rb:Float <=> Fixnum:
./bin/rbx: 53535265 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 44662883 i/s - 1.20x slower
Comparing benchmark/core/float/bench_cmp.rb:Float <=> Bignum:
./bin/rbx: 18382952 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 15127834 i/s - 1.22x slower
Comparing benchmark/core/float/bench_div.rb:Float / Float => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 66116471 i/s
./bin/rbx: 34724912 i/s - 1.90x slower
Comparing benchmark/core/float/bench_div.rb:Float / Fixnum => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 55700188 i/s
./bin/rbx: 35427932 i/s - 1.57x slower
Comparing benchmark/core/float/bench_div.rb:Float / Bignum => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16721377 i/s
./bin/rbx: 16219855 i/s - 1.03x slower
Comparing benchmark/core/float/bench_le.rb:Float <= Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 60704029 i/s
./bin/rbx: 55114580 i/s - 1.10x slower
Comparing benchmark/core/float/bench_le.rb:Float <= Fixum:
./bin/rbx: 51971569 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 51340789 i/s - 1.01x slower
Comparing benchmark/core/float/bench_le.rb:Float <= Bignum:
./bin/rbx: 18129216 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16418150 i/s - 1.10x slower
Comparing benchmark/core/float/bench_gt.rb:Float > Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 60716398 i/s
./bin/rbx: 55027062 i/s - 1.10x slower
Comparing benchmark/core/float/bench_gt.rb:Float > Fixnum:
./bin/rbx: 53690281 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 52836838 i/s - 1.02x slower
Comparing benchmark/core/float/bench_gt.rb:Float > Bignum:
./bin/rbx: 17755650 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16116137 i/s - 1.10x slower
Comparing benchmark/core/float/bench_ge.rb:Float >= Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 60736640 i/s
./bin/rbx: 53136154 i/s - 1.14x slower
Comparing benchmark/core/float/bench_ge.rb:Float >= Fixnum:
./bin/rbx: 53583594 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 52742439 i/s - 1.02x slower
Comparing benchmark/core/float/bench_ge.rb:Float >= Bignum:
./bin/rbx: 18315962 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16479481 i/s - 1.11x slower
Comparing benchmark/core/float/bench_add.rb:Float + Float => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 45431720 i/s
./bin/rbx: 33747530 i/s - 1.35x slower
Comparing benchmark/core/float/bench_add.rb:Float + Fixnum => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 54623720 i/s
./bin/rbx: 33262937 i/s - 1.64x slower
Comparing benchmark/core/float/bench_add.rb:Float + Bignum => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16692215 i/s
./bin/rbx: 15449460 i/s - 1.08x slower
Comparing benchmark/core/float/bench_eql.rb:Float == Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 60003455 i/s
./bin/rbx: 54254686 i/s - 1.11x slower
Comparing benchmark/core/float/bench_eql.rb:Float == Fixnum:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 52804419 i/s
./bin/rbx: 51329105 i/s - 1.03x slower
Comparing benchmark/core/float/bench_eql.rb:Float == Bignum:
./bin/rbx: 17293442 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16289180 i/s - 1.06x slower
Comparing benchmark/core/float/bench_sub.rb:Float - Float => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 64530444 i/s
./bin/rbx: 35072372 i/s - 1.84x slower
Comparing benchmark/core/float/bench_sub.rb:Float - Fixnum => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 54420898 i/s
./bin/rbx: 33531197 i/s - 1.62x slower
Comparing benchmark/core/float/bench_sub.rb:Float - Bignum => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16885430 i/s
./bin/rbx: 15863398 i/s - 1.06x slower
Comparing benchmark/core/float/bench_mul.rb:Float * Float => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 67006710 i/s
./bin/rbx: 34643932 i/s - 1.93x slower
Comparing benchmark/core/float/bench_mul.rb:Float * Fixnum => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 58219989 i/s
./bin/rbx: 33721110 i/s - 1.73x slower
Comparing benchmark/core/float/bench_mul.rb:Float * Bignum => Float:
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 16522004 i/s
./bin/rbx: 14064415 i/s - 1.17x slower
Comparing benchmark/core/float/bench_mod.rb:Float % Float => Float:
./bin/rbx: 25522101 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 2952338 i/s - 8.64x slower
Comparing benchmark/core/float/bench_mod.rb:Float % Fixnum => Float:
./bin/rbx: 25134238 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 2876664 i/s - 8.74x slower
Comparing benchmark/core/float/bench_mod.rb:Float % Bignum => Float:
./bin/rbx: 13439496 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 5692175 i/s - 2.36x slower
Comparing benchmark/core/float/bench_pow.rb:Float ** Float => Float:
./bin/rbx: 13825494 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 6462567 i/s - 2.14x slower
Comparing benchmark/core/float/bench_pow.rb:Float ** Fixnum => Float:
./bin/rbx: 11818951 i/s
/Users/headius/.rvm/rubies/ext-jruby-local/bin/ruby: 6461707 i/s - 1.83x slower
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I confirmed these results on my box too using jruby-head and headius' openjdk8 build with invokedynamic enabled. Wow.