YARV benchmarking

Discussion in 'Ruby' started by E. Saynatkari, Feb 23, 2006.

  1. With YARV 0.4 out, I ran the benchmark suite and got some
    interesting results. These are of course non-real-world
    results (those typically vary between 2-4 times faster)
    but I would be interested in seeing architechture differences.

    Overall, in my case YARV executed the same code in 59.3% of
    the time ruby took on it or in other words, a bit over half
    again faster. The few other people I spoke to showed times
    anywhere between 40-60%.

    There were some tests that YARV was actually slower in.
    Exception handling, Integer#times loops, threading and
    some recursion is still a bit behind (in these tests
    anyway).

    YARV is at http://atdot.net/yarv


    --- Results ------------------------------------------------
    (The ones where YARV is slower marked with *'s.)
    ruby yarv
    ---- ----
    app_answer 1.971 0.328
    app_factorial 0.057 0.544 *
    app_fib 11.914 4.546
    app_mandelbrot 3.749 2.113
    app_pentomino 151.232 134.332
    app_raise 2.224 3.232 *
    app_strconcat 2.128 1.853
    app_tak 15.227 5.573
    app_tarai 11.761 4.473
    loop_times 6.419 17.455 *
    loop_whileloop 17.166 7.461
    loop_whileloop2 3.389 1.507
    so_ackermann 2.106 6.085 *
    so_array 11.575 10.383
    so_concatenate 3.116 3.336 *
    so_count_words 2.921 0.861
    so_exception 4.488 4.608 *
    so_lists 2.208 1.167
    so_matrix 3.058 2.262
    so_nested_loop 9.133 12.835 *
    so_object 9.499 10.440 *
    so_random 3.161 1.820
    so_sieve 1.166 0.488
    vm1_block 38.336 13.484
    vm1_const 30.782 9.581
    vm1_ensure 28.041 7.547
    vm1_length 33.102 14.533
    vm1_rescue 22.668 8.751
    vm1_simplereturn 35.084 12.274
    vm1_swap 37.236 9.112
    vm2_array 10.348 6.022
    vm2_method 22.362 8.369
    vm2_poly_method 29.600 10.360
    vm2_poly_method_ov 7.687 3.456
    vm2_proc 11.107 9.039
    vm2_regexp 6.932 4.406
    vm2_send 7.252 6.162
    vm2_super 8.083 3.072
    vm2_unif1 6.807 2.512
    vm2_zsuper 8.985 3.294
    vm3_thread_create_join 0.020 0.149 *
    -------------------------------------------------
    Total: 624.100 369.825

    --- Versions ------------------------------------------------
    ruby 2.0.0 (Base: Ruby 1.9.0 2006-02-14) [x86_64-freebsd6.0]
    YARVCore 0.4.0 Rev: 466 (2006-02-22) [opts: ]

    ruby 1.8.4 (2005-12-24) [amd64-freebsd6]

    --- Machine -------------------------------------------------
    FreeBSD yawn.magical-cat.org 6.0-RELEASE FreeBSD 6.0-RELEASE #0: Thu Jan
    5 16:29:48 EST 2006
    -cat.org:/usr/obj/usr/src/sys/LAPTOP amd64

    (1.8GHz, 512MiB)


    E

    --
    Posted via http://www.ruby-forum.com/.
    E. Saynatkari, Feb 23, 2006
    #1
    1. Advertising

  2. E. Saynatkari

    Luc Heinrich Guest

    On 23 f=E9vr. 06, at 02:38, E. Saynatkari wrote:

    > With YARV 0.4 out, I ran the benchmark suite and got some
    > interesting results. These are of course non-real-world
    > results (those typically vary between 2-4 times faster)
    > but I would be interested in seeing architechture differences.


    Here are mine:

    -- benchmark summary ---------------------------
    (The ones where YARV is slower marked with *'s.)

    ruby yarv
    ---- ----
    app_answer 2.418 0.405
    app_factorial 1.456 0.743
    app_fib 15.248 5.514
    app_mandelbrot 4.999 2.450
    app_pentomino 212.400 104.224
    app_raise 4.370 4.844 *
    app_strconcat 3.648 2.852
    app_tak 19.795 7.156
    app_tarai 15.720 5.735
    loop_times 8.294 5.903
    loop_whileloop 21.181 9.547
    loop_whileloop2 4.250 1.924
    so_ackermann 42.671 6.196
    so_array 14.458 7.160
    so_concatenate 3.876 2.178
    so_count_words 1.610 0.955
    so_exception 7.298 6.310
    so_lists 2.518 1.429
    so_matrix 4.011 1.998
    so_nested_loop 11.652 6.595
    so_object 13.858 9.797
    so_random 4.680 2.514
    so_sieve 1.555 0.677
    vm1_block 51.689 16.343
    vm1_const 38.324 13.231
    vm1_ensure 37.261 9.546
    vm1_length 40.715 19.410
    vm1_rescue 30.107 11.241
    vm1_simplereturn 42.499 14.965
    vm1_swap 53.092 11.935
    vm2_array 12.452 6.581
    vm2_method 26.487 10.435
    vm2_poly_method 37.888 13.257
    vm2_poly_method_ov 9.918 4.250
    vm2_proc 15.580 4.702
    vm2_regexp 9.237 6.154
    vm2_send 9.632 4.729
    vm2_super 10.475 3.786
    vm2_unif1 8.588 3.351
    vm2_zsuper 11.429 4.171
    vm3_thread_create_join 0.035 0.799 *
    -------------------------------------------------
    Total: 867.374 355.992

    --- Versions ------------------------------------------------
    Ruby:
    ruby 1.8.4 (2005-12-24) [powerpc-darwin8.3.0]

    YARV:
    ruby 2.0.0 (Base: Ruby 1.9.0 2006-02-14) [powerpc-darwin8.5.0]
    YARVCore 0.4.0 Rev: 471 (2006-02-22) [opts: ]

    --- Machine -------------------------------------------------
    Darwin arrakis.local 8.5.0 Darwin Kernel Version 8.5.0: Sun Jan 22 =20
    10:38:46 PST 2006; root:xnu-792.6.61.obj~1/RELEASE_PPC Power =20
    Macintosh powerpc

    --=20
    Luc Heinrich - - http://www.honk-honk.com
    Luc Heinrich, Feb 23, 2006
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. SASADA Koichi

    Any YARV pre-questions in RubyConf2004?

    SASADA Koichi, Sep 27, 2004, in forum: Ruby
    Replies:
    19
    Views:
    210
    gabriele renzi
    Sep 29, 2004
  2. SASADA Koichi
    Replies:
    17
    Views:
    240
    John Tromp
    Dec 8, 2004
  3. SASADA Koichi

    [ANN] YARV: Yet Another RubyVM 0.1.0

    SASADA Koichi, Jan 10, 2005, in forum: Ruby
    Replies:
    2
    Views:
    107
    George Moschovitis
    Jan 10, 2005
  4. jm

    yarv and dbi

    jm, Feb 2, 2005, in forum: Ruby
    Replies:
    17
    Views:
    158
    Michael Neumann
    Feb 13, 2005
  5. SASADA Koichi

    [ANN] YARV: Yet Another RubyVM 0.1.1

    SASADA Koichi, Feb 18, 2005, in forum: Ruby
    Replies:
    4
    Views:
    91
    Benedikt Huber
    Feb 23, 2005
Loading...

Share This Page