HTML::Template::Proのベンチがblog.nomadscafe.jpで紹介されていたので、コードを拝借して自分の環境(PentiumM1.1GHz,メモリ1GB)でもベンチしてみた。
> perl htmlpro-bench.pl
Benchmark: timing 1000 iterations of HTML::Template, HTML::Template::Pro...
HTML::Template: 7 wallclock secs ( 6.21 usr + 0.00 sys = 6.21 CPU) @ 161.06/s (n=1000)
HTML::Template::Pro: 2 wallclock secs ( 2.64 usr + 0.02 sys = 2.66 CPU) @ 375.38/s (n=1000)
自分の環境では3倍程度しか速くならなかった…。で、0.38からはHTML::Template::Exprの一部機能もサポートされているようなので、そっちもベンチしてみる。ループに、
<TMPL_IF EXPR="value > 10"><TMPL_VAR NAME=key><TMPL_VAR NAME=value><br></TMPL_IF>
だけ追加してみて実験。
> perl htmlpro-bench2.pl
Benchmark: timing 1000 iterations of HTML::Template::Expr, HTML::Template::Pro...
HTML::Template::Expr: 23 wallclock secs (21.51 usr + 0.01 sys = 21.52 CPU) @ 46.47/s (n=1000)
HTML::Template::Pro: 3 wallclock secs ( 2.95 usr + 0.01 sys = 2.96 CPU) @ 337.38/s (n=1000)
こっちは8倍ぐらい速い。それだけHTML::Template::Exprが遅いってことだろうけど…。
10倍から25倍とはいかなかったけれど、こういう速度アップは、うちのサーバー(OpenBlockS266)みたいな貧弱な環境にはとてもありがたい。しばらく使ってみよう。