Re: Linux Hello World: TT Optimized...

2000-12-12 Thread Stas Bekman

On Tue, 12 Dec 2000, Jeremy Howard wrote:

 Joshua Chamas wrote:
  If you are using CGI.pm object methods, I would worry about calling
  all those methods to build your HTML and if you are performance
  minded, I would use them frugally.
 
 IIRC, CGI.pm is actually slower to run the functional syntax than the object
 syntax. This is because accessing CGI's functions end up getting dispatched
 through a complex autoload(ish) mechanism.
 
 I haven't benchmarked this though, so it's only theory!

It's documentated and benchmarked in the guide:
http://perl.apache.org/guide/performance.html#Object_Methods_Calls_vs_Functio
http://perl.apache.org/guide/performance.html#Are_All_Methods_Slower_than_Func

_
Stas Bekman  JAm_pH --   Just Another mod_perl Hacker
http://stason.org/   mod_perl Guide  http://perl.apache.org/guide 
mailto:[EMAIL PROTECTED]   http://apachetoday.com http://logilune.com/
http://singlesheaven.com http://perl.apache.org http://perlmonth.com/  





Re: Linux Hello World: TT Optimized...

2000-12-12 Thread newsreader

On Mon, Dec 11, 2000 at 10:14:56PM -0800, Joshua Chamas wrote:
 [EMAIL PROTECTED] wrote:
  
  Could you please explain the differences between
  CGI Raw and CGI.pm?  I'm using oo method of
  CGI.

 The Raw CGI test makes no use of CGI.pm, just issues raw print 
 statements that sets up the right CGI headers.  Please note that the 
 number that I reported showed a difference of .00065 seconds of system 
 time per request between CGI.pm  Raw CGI HelloWorld, so I wouldn't much 
 worry about the environment overhead.

Oh you meant cgi.  CGI should be reserved for CGI.pm stuff.

I don't use CGI's html functions at all because I just
don't see much saving in terms of typing.  I guess I am 
in between your 'RAW' case and CGI.pm case

I only use CGI's param,header,cookie and redirect functions 
and DISABLE_UPLOADS and POST_MAX variables.  Given that
real handler is the second best performer after static
html I wonder how big of a step from using Registry to 
writing a handler. I know I can rely on CGI because
it is time tested. I wonder whether there are CGI equivalent
modules if I don't use handler.  I read earlier
that CGI alternatives have some problems.


 
 If you are using CGI.pm object methods, I would worry about calling 
 all those methods to build your HTML and if you are performance 
 minded, I would use them frugally.
 
 --Josh



Linux Hello World: TT Optimized...

2000-12-11 Thread Joshua Chamas

Hey,

Updated results from the other day with the Template Toolkit 
benchmark properly optimized, thanks Perrin!  

The reference for these numbers is at: http://www.chamas.com/bench
If you would like the hello test suite, please email me separately.

]# ./bench.pl -time=60

Test Name Test FileHits/sec Total Hits   Total Time   sec/Hits 

      
 
Apache::ASP   hello.asp 414.1   24846 hits   60.00 sec0.002415 

Apache::Registry CGI Raw  hello_raw.re  741.7   44502 hits   60.00 sec0.001348 

Apache::Registry CGI.pm   hello.reg 500.0   30001 hits   60.00 sec0.002000 

HTML Static   hello.html   1215.7   5 hits   41.13 sec0.000823 

HTML::Embperl hello.epl 509.6   30579 hits   60.00 sec0.001962 

HTML::Mason   hello.mas 385.9   23153 hits   60.00 sec0.002592 

ModPerl Handler   hello.bench   885.8   5 hits   56.45 sec0.001129 

Template Toolkit  hello.tt  560.3   33622 hits   60.01 sec0.001785 


-- Josh

_
Joshua Chamas   Chamas Enterprises Inc.
NodeWorks  free web link monitoring   Huntington Beach, CA  USA 
http://www.nodeworks.com1-714-625-4051



Re: Linux Hello World: TT Optimized...

2000-12-11 Thread newsreader

Could you please explain the differences between
CGI Raw and CGI.pm?  I'm using oo method of
CGI.

Thanks
   
On Mon, Dec 11, 2000 at 07:56:03PM -0800, Joshua Chamas wrote:
 Hey,
 
 Updated results from the other day with the Template Toolkit 
 benchmark properly optimized, thanks Perrin!  
 
 The reference for these numbers is at: http://www.chamas.com/bench
 If you would like the hello test suite, please email me separately.
 
 ]# ./bench.pl -time=60
 
 Test Name Test FileHits/sec Total Hits   Total Time   
sec/Hits 
       
 
 Apache::ASP   hello.asp 414.1   24846 hits   60.00 sec
0.002415 
 Apache::Registry CGI Raw  hello_raw.re  741.7   44502 hits   60.00 sec
0.001348 
 Apache::Registry CGI.pm   hello.reg 500.0   30001 hits   60.00 sec
0.002000 
 HTML Static   hello.html   1215.7   5 hits   41.13 sec
0.000823 
 HTML::Embperl hello.epl 509.6   30579 hits   60.00 sec
0.001962 
 HTML::Mason   hello.mas 385.9   23153 hits   60.00 sec
0.002592 
 ModPerl Handler   hello.bench   885.8   5 hits   56.45 sec
0.001129 
 Template Toolkit  hello.tt  560.3   33622 hits   60.01 sec
0.001785 
 
 -- Josh
 
 _
 Joshua Chamas Chamas Enterprises Inc.
 NodeWorks  free web link monitoring Huntington Beach, CA  USA 
 http://www.nodeworks.com1-714-625-4051



Re: Linux Hello World: TT Optimized...

2000-12-11 Thread Joshua Chamas

[EMAIL PROTECTED] wrote:
 
 Could you please explain the differences between
 CGI Raw and CGI.pm?  I'm using oo method of
 CGI.
 
 Thanks
 
 On Mon, Dec 11, 2000 at 07:56:03PM -0800, Joshua Chamas wrote:
  Hey,
 
  Updated results from the other day with the Template Toolkit
  benchmark properly optimized, thanks Perrin!
 
  The reference for these numbers is at: http://www.chamas.com/bench
  If you would like the hello test suite, please email me separately.
 

See http://www.chamas.com/bench/#perlcgi

The Raw CGI test makes no use of CGI.pm, just issues raw print 
statements that sets up the right CGI headers.  Please note that the 
number that I reported showed a difference of .00065 seconds of system 
time per request between CGI.pm  Raw CGI HelloWorld, so I wouldn't much 
worry about the environment overhead.

If you are using CGI.pm object methods, I would worry about calling 
all those methods to build your HTML and if you are performance 
minded, I would use them frugally.

--Josh



Re: Linux Hello World: TT Optimized...

2000-12-11 Thread Jeremy Howard

Joshua Chamas wrote:
 If you are using CGI.pm object methods, I would worry about calling
 all those methods to build your HTML and if you are performance
 minded, I would use them frugally.

IIRC, CGI.pm is actually slower to run the functional syntax than the object
syntax. This is because accessing CGI's functions end up getting dispatched
through a complex autoload(ish) mechanism.

I haven't benchmarked this though, so it's only theory!