Perl Template Roundup April 2010
Although published in June, this Template Roundup was generated from benchmarks gathered during April 2010, using versions of the various template engines available at that time.
You may want to read the more up-to-date June 2010 roundup instead, and regard this one as a historical curiosity.
It's rather quaint in this day and age to warn that a page contains a lot of images but, be advised, some of these reports do contain up to a hundred chart images.
You can leap right in to see the charts from the reports page, but I advise you to read the glossary first, and you might want to read about the methodology too.
The raw benchmark data used to construct these reports is available, but only on request. I don't have bandwidth to burn on idly curious downloads.
Important Notes for the April 2010 Roundup
It should be noted that the version of Text::Xslate used was an extremely early alpha and does not fairly reflect the performance or caching types available in the versions released in the interim.
The shared memory caching seems to work intermittently on my benchmark machine, so the results are possibly unreliable. Since only one template engine has shared memory caching implemented in its Template::Benchmark plugin, the results probably wouldn't have made for an interesting "comparison" anyway.
Template Engines Used for the April 2010 Roundup
Variant | Description |
---|---|
HT | HTML::Template (2.9) |
HTC | HTML::Template::Compiled (0.94) |
HTE | HTML::Template::Expr (0.07) |
HTJ | HTML::Template::JIT (0.05) |
HTP | HTML::Template::Pro (0.93) |
MoTe | Mojo::Template (0.999921) |
NT | NTS::Template (2.1) |
TAHT | Template::Alloy (1.013) in HTML::Template mode |
TATT | Template::Alloy (1.013) in Template::Toolkit mode |
TATT_P | Template::Alloy (1.013) in Template::Toolkit mode (compile to perl) |
TATT_PS | Template::Alloy (1.013) in Template::Toolkit mode (compile to perl, using process_simple()) |
TATT_S | Template::Alloy (1.013) in Template::Toolkit mode (using process_simple()) |
TS | Template::Sandbox (1.03) without caching |
TS_CF | Template::Sandbox (1.03) with Cache::CacheFactory (1.10) caching |
TS_CHI | Template::Sandbox (1.03) with CHI (0.34) caching |
TS_FMM | Template::Sandbox (1.03) with Cache::FastMmap (1.34) caching |
TT | Template::Toolkit (2.22) |
TT_X | Template::Toolkit (2.22) with Stash::XS (no version number) |
TT_XCET | Template::Toolkit (2.22) with Stash::XS (no version number) and Template::Parser::CET (0.05) |
TTiny | Template::Tiny (0.11) |
TeCS | Text::ClearSilver (0.10.5.1) |
TeMMHM | Text::MicroMason (2.07) using Text::MicroMason::HTMLMason (no version number) |
TeMMTeTe | Text::MicroMason (2.07) using Text::MicroMason::TextTemplate (no version number) |
TeMT | Text::MicroTemplate (0.11) |
TeTe | Text::Template (1.45) |
TeTeSimp | Text::Template::Simple (0.81) |
TeTmpl | Text::Tmpl (0.33) |
TeXs | Text::Xslate (0.001_05) |
Tenj | Tenjin (0.051) |
Thanks
Thanks go out to Jakub Narebski for valuable feedback and suggestions.