speed benchmarks comparing Ruby to Py/Perl/PHP/etc?

Discussion in 'Ruby' started by Ruby Baby, Feb 19, 2004.

  1. Ruby Baby

    Ruby Baby Guest

    I know Ruby wasn't created to make a fast-running language.

    But I just realized I've never seen any Ruby benchmarks, comparing
    it to other languages under heavy load or speed.

    Anyone seen some?

    I ask for a real reason becuase it's under consideration to
    replace PHP with Ruby on a high-traffic website I work with.
     
    Ruby Baby, Feb 19, 2004
    #1
    1. Advertising

  2. > I know Ruby wasn't created to make a fast-running language.
    >
    > But I just realized I've never seen any Ruby benchmarks, comparing it to
    > other languages under heavy load or speed.
    >
    > Anyone seen some?


    No.

    > I ask for a real reason becuase it's under consideration to
    > replace PHP with Ruby on a high-traffic website I work with.


    As a complete non-expert, I suggest you try out FastCGI (just ask Ara
    Howard) and squid (just to cache responses to take the heat off your app).
    If those technologies are amenable to your application, it wouldn't
    matter if you wrote it in Commodore 64 BASIC.

    Cheers,
    Gavin
     
    Gavin Sinclair, Feb 19, 2004
    #2
    1. Advertising

  3. If you run a search on google for The Great Programming Language Shootout it
    shows performance graphs between a number of languages in a number of categories
    including tight loops, number crunching, etc. I don't remember if php was
    included though, perl and python were though. Actually that's a good
    site to research how different languages approach certain problems as well.

    Charles Comstock

    On Thu, 19 Feb 2004, Gavin Sinclair wrote:

    > > I know Ruby wasn't created to make a fast-running language.
    > >
    > > But I just realized I've never seen any Ruby benchmarks, comparing it to
    > > other languages under heavy load or speed.
    > >
    > > Anyone seen some?

    >
    > No.
    >
    > > I ask for a real reason becuase it's under consideration to
    > > replace PHP with Ruby on a high-traffic website I work with.

    >
    > As a complete non-expert, I suggest you try out FastCGI (just ask Ara
    > Howard) and squid (just to cache responses to take the heat off your app).
    > If those technologies are amenable to your application, it wouldn't
    > matter if you wrote it in Commodore 64 BASIC.
    >
    > Cheers,
    > Gavin
    >
    >
    >
    >
    >
     
    Charles Comstock, Feb 19, 2004
    #3
  4. il Thu, 19 Feb 2004 13:20:58 +0900, Ruby Baby <> ha
    scritto::

    >I know Ruby wasn't created to make a fast-running language.
    >
    >But I just realized I've never seen any Ruby benchmarks, comparing
    >it to other languages under heavy load or speed.
    >
    >Anyone seen some?
    >
    >I ask for a real reason becuase it's under consideration to
    >replace PHP with Ruby on a high-traffic website I work with.



    all the benchmarks out there (i.e. doug's shootout) are really
    outdated. ruby seem to be slower than python or perl, but faster than
    php. Anyway, an apache benchmark against each plain mod_* or fastcgi
    solution would be really interesting :)
     
    gabriele renzi, Feb 19, 2004
    #4
  5. "Ruby Baby" <> schrieb im Newsbeitrag
    news:...
    > I know Ruby wasn't created to make a fast-running language.
    >
    > But I just realized I've never seen any Ruby benchmarks, comparing
    > it to other languages under heavy load or speed.
    >
    > Anyone seen some?
    >
    > I ask for a real reason becuase it's under consideration to
    > replace PHP with Ruby on a high-traffic website I work with.


    There was an interesting post on this earlier, which seems to indicate
    that Ruby *can* be an order of magnitude faster than PHP:
    http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/86925

    Regards

    robert
     
    Robert Klemme, Feb 19, 2004
    #5
  6. Ruby Baby

    Ruby Baby Guest

    > If you run a search on google for The Great Programming Language Shootout it
    > shows performance graphs between a number of languages in a number of categories
    > including tight loops, number crunching, etc.



    How funny :

    Perl, Python, Ruby all next to eachother - same results:

    http://www.bagley.org/~doug/shootout/craps.shtml


    (though this was 3 years ago)
     
    Ruby Baby, Feb 19, 2004
    #6
  7. il Thu, 19 Feb 2004 01:13:14 -0600, Charles Comstock
    <> ha scritto::

    >If you run a search on google for The Great Programming Language Shootout it
    >shows performance graphs between a number of languages in a number of categories
    >including tight loops, number crunching, etc. I don't remember if php was
    >included though, perl and python were though. Actually that's a good
    >site to research how different languages approach certain problems as well.
    >
    > Charles Comstock
    >

    it included php, but sadly to say, that shootout is abandoned.
    it may be interesting, somehow, but ruby, as an exmaple changed a lot
    from 1.6.6 to 1.8.1, even adding idiomatic faster ways to do things
    (i.e. block parameters to build hashes or arrays.)

    There is an effort (in early stage) to build a newer
    benchmark/comparison framework at scutigena.sf.net if you're
    interested in this kind of stuff :)
     
    gabriele renzi, Feb 19, 2004
    #7
  8. Ruby Baby

    Ara.T.Howard Guest

    On Thu, 19 Feb 2004, Ruby Baby wrote:

    > Date: Thu, 19 Feb 2004 13:20:58 +0900
    > From: Ruby Baby <>
    > Newsgroups: comp.lang.ruby
    > Subject: speed benchmarks comparing Ruby to Py/Perl/PHP/etc?
    >
    > I know Ruby wasn't created to make a fast-running language.
    >
    > But I just realized I've never seen any Ruby benchmarks, comparing
    > it to other languages under heavy load or speed.
    >
    > Anyone seen some?
    >
    > I ask for a real reason becuase it's under consideration to
    > replace PHP with Ruby on a high-traffic website I work with.


    we have done that. however, we also use fastcgi. using fastcgi should give
    you around one to two orders of magnitude speedup (according to seige). when
    this is done the speed of the actual lang is completely insignificant.

    -a
    --
    ===============================================================================
    | EMAIL :: Ara [dot] T [dot] Howard [at] noaa [dot] gov
    | PHONE :: 303.497.6469
    | ADDRESS :: E/GC2 325 Broadway, Boulder, CO 80305-3328
    | URL :: http://www.ngdc.noaa.gov/stp/
    | TRY :: for l in ruby perl;do $l -e "print \"\x3a\x2d\x29\x0a\"";done
    ===============================================================================
     
    Ara.T.Howard, Feb 19, 2004
    #8
  9. Ruby Baby

    Ara.T.Howard Guest

    On Thu, 19 Feb 2004, gabriele renzi wrote:

    > Date: Thu, 19 Feb 2004 07:32:04 GMT
    > From: gabriele renzi <>
    > Newsgroups: comp.lang.ruby
    > Subject: Re: speed benchmarks comparing Ruby to Py/Perl/PHP/etc?
    >
    > il Thu, 19 Feb 2004 13:20:58 +0900, Ruby Baby <> ha
    > scritto::
    >
    > >I know Ruby wasn't created to make a fast-running language.
    > >
    > >But I just realized I've never seen any Ruby benchmarks, comparing
    > >it to other languages under heavy load or speed.
    > >
    > >Anyone seen some?
    > >
    > >I ask for a real reason becuase it's under consideration to
    > >replace PHP with Ruby on a high-traffic website I work with.

    >
    >
    > all the benchmarks out there (i.e. doug's shootout) are really
    > outdated. ruby seem to be slower than python or perl, but faster than
    > php. Anyway, an apache benchmark against each plain mod_* or fastcgi
    > solution would be really interesting :)


    something like this was posted - about a year ago - but i cannot seem to find
    it...

    this thread is interesting though

    http://groups.google.com/groups?hl=...lm=20021006082518.A73241%40freeze.org&rnum=60

    in particular

    http://groups.google.com/groups?hl=...lm=20021006082518.A73241%40freeze.org&rnum=60

    i have fastcgi and the lastest php installed on my machine. i could run some
    bencharks if i intalled mod_ruby and have good enough test suite. imho a good
    test would hit a database and generate some dynamic html from some sort of
    templating library.


    i can tell you now though that:

    [ahoward@www ahoward]$ ab -n 1024 http://127.0.0.1/env.fcgi | egrep Requests
    Requests per second: 221.74 [#/sec] (mean)

    [ahoward@www ahoward]$ ab -n 1024 http://127.0.0.1/env.cgi | egrep Requests
    Requests per second: 9.98 [#/sec] (mean)

    and

    [ahoward@www ahoward]$ cat /usr/local/httpd/htdocs/env.fcgi
    #!/usr/local/ruby-1.8.0/bin/ruby
    require 'cgi'
    require 'fcgi'

    FCGI.each_cgi do |cgi|
    content = ''
    env = []
    cgi.env_table.each{|k,v| env << [k,v]}
    env.sort!
    env.each{|k,v| content << %Q(#{k} => #{v}<br>\n)}
    cgi.out{content}
    end

    [ahoward@www ahoward]$ cat /usr/local/httpd/htdocs/env.cgi
    #!/usr/local/ruby-1.8.0/bin/ruby
    require 'cgi'
    require 'fcgi'

    FCGI.each_cgi do |cgi|
    content = ''
    env = []
    cgi.env_table.each{|k,v| env << [k,v]}
    env.sort!
    env.each{|k,v| content << %Q(#{k} => #{v}<br>\n)}
    cgi.out{content}
    end

    eg. they are the same exact program, which is nice too. for me this shows
    that fastcgi is 'fast enough', though i can appreciate the desire for more
    extensive testing.

    -a

    --
    ===============================================================================
    | EMAIL :: Ara [dot] T [dot] Howard [at] noaa [dot] gov
    | PHONE :: 303.497.6469
    | ADDRESS :: E/GC2 325 Broadway, Boulder, CO 80305-3328
    | URL :: http://www.ngdc.noaa.gov/stp/
    | TRY :: for l in ruby perl;do $l -e "print \"\x3a\x2d\x29\x0a\"";done
    ===============================================================================
     
    Ara.T.Howard, Feb 19, 2004
    #9
  10. Ruby Baby wrote:
    > But I just realized I've never seen any Ruby benchmarks, comparing
    > it to other languages under heavy load or speed.
    >
    > Anyone seen some?


    Vaguely related -- could someone confirm that the following suggestions
    are still valid for Ruby 1.8+ (the test circa Ruby 1.6.6)

    http://www.bagley.org/~doug/shootout/lang/ruby/
    (See the bottom of the url for the few performance tips.)

    Anyone have additional tips to add?

    --
    (-, /\ \/ / /\/
     
    Gavin Kistner, Feb 19, 2004
    #10
  11. Tyler Eaves wrote:
    > On 2004-02-19, Ruby Baby <> wrote:
    >>
    >>
    >> I know Ruby wasn't created to make a fast-running language.
    >>
    >> But I just realized I've never seen any Ruby benchmarks, comparing
    >> it to other languages under heavy load or speed.
    >>
    >> Anyone seen some?
    >>
    >> I ask for a real reason becuase it's under consideration to
    >> replace PHP with Ruby on a high-traffic website I work with.

    >
    > From my expirence, Ruby is slower than both Python or PHP.
    > That sad, I wouldn't be too nervous on using for a website
    > in conjuction with mod_ruby. For most typical webscripts,
    > runtime is mainly a factor of two things:
    >
    > Startup time (essentially zero with mod_ruby. This is also why PHP feels
    > so fast)


    fastcgi is even better.

    > Database querys (Not a language thing really, but where most of the time
    > is spent)


    I agree, that's the most important point; the speed of the language
    interpreter itself is pretty irrelevant.
     
    Andreas Schwarz, Feb 19, 2004
    #11
  12. gabriele renzi wrote:
    > il Thu, 19 Feb 2004 01:13:14 -0600, Charles Comstock
    > <> ha scritto::
    >
    >
    >>If you run a search on google for The Great Programming Language Shootout it
    >>shows performance graphs between a number of languages in a number of categories
    >>including tight loops, number crunching, etc. I don't remember if php was
    >>included though, perl and python were though. Actually that's a good
    >>site to research how different languages approach certain problems as well.
    >>
    >> Charles Comstock
    >>

    >
    > it included php, but sadly to say, that shootout is abandoned.
    > it may be interesting, somehow, but ruby, as an exmaple changed a lot
    > from 1.6.6 to 1.8.1, even adding idiomatic faster ways to do things
    > (i.e. block parameters to build hashes or arrays.)
    >
    > There is an effort (in early stage) to build a newer
    > benchmark/comparison framework at scutigena.sf.net if you're
    > interested in this kind of stuff :)


    Your only using ruby 1.7.2, not 1.8.1, any particular reason why?

    Charlie
     
    Charles Comstock, Feb 19, 2004
    #12
  13. il Thu, 19 Feb 2004 10:41:22 -0600, Charles Comstock
    <> ha scritto::


    >Your only using ruby 1.7.2, not 1.8.1, any particular reason why?
    >


    it's not *me* it's *they*.. but I happen to know the anwser :)
    I suggested one of the authors to move to ruby 1.8.1 and they said the
    had problem with stack overflow with the calculation of ackermann(3,7)
    on they machine (some debian with ruby deb pkg).
    If you can solve that issue they'd pleased to upgrade.
    Anyway the framework is enough good to allow you to run it with you
    own ruby version just by doing some cp/mv/mkdir
     
    gabriele renzi, Feb 19, 2004
    #13
  14. Hi!

    * Ruby Baby:
    > it's under consideration to replace PHP with Ruby on a high-traffic
    > website I work with.


    Is a Trabant (built in GDR, maximum speed ~ 107 km/h) faster than a
    BWM? It depends. If the lights turn green a BMW driver sees the back
    of a Trabant due to the Trabant's low mass. After some hundred meters
    the BWM is in lead.

    Is Ruby faster than PHP? Again the question is: Given what scenario?

    Josef 'Jupp' SCHUGT
    --
    http://oss.erdfunkstelle.de/ruby/ - German comp.lang.ruby FAQ
    http://rubyforge.org/users/jupp/ - Ruby projects at Rubyforge
     
    Josef 'Jupp' SCHUGT, Feb 20, 2004
    #14
    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. Dimitri Ognibene

    java vs c++ speed benchmarks

    Dimitri Ognibene, Apr 28, 2006, in forum: Java
    Replies:
    7
    Views:
    10,166
    Thomas Hawtin
    Apr 29, 2006
  2. Scott Robert Ladd
    Replies:
    6
    Views:
    418
    Scott Robert Ladd
    Sep 18, 2004
  3. Scott Robert Ladd
    Replies:
    8
    Views:
    567
    Rajeev
    Sep 20, 2004
  4. Kevin Walzer

    Re: PIL (etc etc etc) on OS X

    Kevin Walzer, Aug 1, 2008, in forum: Python
    Replies:
    4
    Views:
    407
    Fredrik Lundh
    Aug 13, 2008
  5. Rajive Narain
    Replies:
    0
    Views:
    1,854
    Rajive Narain
    Sep 18, 2009
Loading...

Share This Page