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

R

Ruby Baby

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.
 
G

Gavin Sinclair

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
 
C

Charles Comstock

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
 
G

gabriele renzi

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 :)
 
R

Robert Klemme

Ruby Baby said:
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
 
G

gabriele renzi

il Thu, 19 Feb 2004 01:13:14 -0600, Charles Comstock
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 :)
 
A

Ara.T.Howard

Date: Thu, 19 Feb 2004 13:20:58 +0900
From: Ruby Baby <[email protected]>
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
===============================================================================
 
A

Ara.T.Howard

Date: Thu, 19 Feb 2004 07:32:04 GMT
From: gabriele renzi <[email protected]>
Newsgroups: comp.lang.ruby
Subject: Re: speed benchmarks comparing Ruby to Py/Perl/PHP/etc?




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
===============================================================================
 
G

Gavin Kistner

Ruby said:
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?
 
A

Andreas Schwarz

Tyler said:
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.
 
C

Charles Comstock

gabriele said:
il Thu, 19 Feb 2004 01:13:14 -0600, 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
 
G

gabriele renzi

il Thu, 19 Feb 2004 10:41:22 -0600, Charles Comstock
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
 
J

Josef 'Jupp' SCHUGT

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
 

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,582
Members
45,057
Latest member
KetoBeezACVGummies

Latest Threads

Top