You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Joshua Chamas <jo...@chamas.com> on 2001/01/06 11:37:05 UTC

Linux Hello World 2000, Results In!!

Hey,

The Hello World 2000 benchmark is complete, and my results are below
along with the Hello World benchmark.  Please feel free to contribute
h2000 benchmarks for any environment, or suggest changes for those
in the test suite, download at http://www.chamas.com/bench/hello.tar.gz

The h2000 bench is geared toward web apps with templates.

Please note that I couldn't get a java String->Int type cast right,
so fudged one line in the h2000.jsp ( fix? )  Also note, as seen 
below, I am using the latest versions of PHP & IBM's Java, but not 
of perl, so the results may not be fair in comparing the languages 
on my platform.

--Josh

]# ./bench.pl -version -time=60  ( -h for help )

Test Name                      Test File  Hits/sec   Total Hits Total Time sec/Hits   Bytes/Hit  
------------                   ---------- ---------- ---------- ---------- ---------- ---------- 
Apache::ASP v2.07 2000         h2000.asp   228.0     13687 hits 60.03 sec  0.004386   28997 byte 
HTML::Embperl v2.0a18 2000     h2000.epl   247.3     14846 hits 60.04 sec  0.004044   28809 byte 
HTML::Mason v0.895 2000        h2000.mas   222.9     13378 hits 60.01 sec  0.004485   28798 byte 
mod_caucho JSP 2000            h2000.jsp   328.9     19741 hits 60.03 sec  0.003041   28964 byte 
mod_php PHP 2000               h2000.php   261.8     15717 hits 60.04 sec  0.003820   28865 byte 
Template v2.00 Toolkit 2000    h2000.tt     55.6     3336 hits  60.01 sec  0.017987   28888 byte 
Apache::ASP v2.07              hello.asp   390.6     23444 hits 60.01 sec  0.002560   241 bytes  
Apache::Dispatch v0.08 handler hello/worl  656.1     39374 hits 60.01 sec  0.001524   196 bytes  
Apache::ePerl                  hello.eper  344.8     20687 hits 60.00 sec  0.002900   217 bytes  
Apache::Registry v2.01 CGI Raw hello_raw.  706.4     42394 hits 60.02 sec  0.001416   52 bytes   
Apache::Registry v2.01 CGI.pm  hello.reg   458.5     27529 hits 60.03 sec  0.002181   216 bytes  
Apache::SSI v2.16              hello.shtm  559.4     33571 hits 60.01 sec  0.001788   199 bytes  
HTML static                    hello.html 1158.4     50000 hits 43.16 sec  0.000863   311 bytes  
HTML::Embperl v2.0a18          hello.epl   458.2     27496 hits 60.01 sec  0.002183   219 bytes  
HTML::Mason v0.895             hello.mas   365.3     21925 hits 60.02 sec  0.002737   197 bytes  
HTML::Template v2.0            hello.htmp  567.2     34041 hits 60.01 sec  0.001763   198 bytes  
mod_caucho JSP                 hello.jsp   860.6     50000 hits 58.10 sec  0.001162   230 bytes  
mod_include SSI                hello.shtm  996.6     50000 hits 50.17 sec  0.001003   198 bytes  
mod_perl handler               hello.benc  852.6     50000 hits 58.64 sec  0.001173   196 bytes  
mod_php PHP                    hello.php   734.8     44095 hits 60.01 sec  0.001361   225 bytes  
Template v2.00 Toolkit         hello.tt    522.1     31338 hits 60.02 sec  0.001915   198 bytes  

Apache Server Header Tokens
---------------------------
(Unix)
Apache/1.3.14
OpenSSL/0.9.6
PHP/4.0.3pl1
Resin/1.2.1
mod_perl/1.24
mod_ssl/2.7.1

PERL Version: 5.00503

JAVA Version: java version "1.3.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
Classic VM (build 1.3.0, J2RE 1.3.0 IBM build cx130-20001124 (JIT enabled: jitc))

Operating System: Linux 2.2.14-5.0smp (root@porky) (gcc egcs-2.91.66) #1 2CPU [gate]

Re: Linux Hello World 2000, Results In!!

Posted by Perrin Harkins <pe...@primenet.com>.
Joshua Chamas wrote:
> The Hello World 2000 benchmark is complete, and my results are below

Kind of harsh results for Template Toolkit, but it makes sense given the
nature of the test.  Variable interpolation in TT provides extra
functionality to give transparent access to method calls, coderefs,
etc.  The other systems are just going direct to Perl data structures.

In practice, I wouldn't do all this variable assignment stuff in the
template; I'd do it in a handler before running the template.  That
wouldn't make sense for the Embperl/ASP/Mason style systems though.

By the way, it would be cool if the test ran a few times, dropped the
high and low for each system, and took an average of the remaining
times.  That would smooth out some of the inaccuracies that are
unavoidable with this kind of benchmarking.

Nice work.

- Perrin