Slowdown on GAE using pre-compiled templates

Arun Kumar <[email protected]> Wed, 14 Oct 2009 11:52:59 +0530
Newsgroups gmane.comp.python.cheetah
Message-ID <[email protected]>
hi everyone,
i'm new to the list, well Cheetah too, and i really like what i see!

i came across a problem using Cheetah on Google App Engine (GAE). When i 
used pre-compiled templates, the time to render some 500 rows of a table 
was over 140 seconds. Using dynamically compiled templates the page was 
rendering in about 200ms.

After chatting with rtyler on irc and doing some profile tests, we 
managed to narrow the problem down to the valueFromFrameOrSearchList 
call from Cheetah/NameMapper.py. Which appears to be the main difference 
between the two. The dynamically compiled templates uses 
valueFromSearchList (and not VFFSL).

One option to circumvent this problem has been to use the 
'useStackFrames=False' #compiler-settings. That seems to get the page to 
render at about the same speed as the dynamically generated template.

Let me know if anyone wants the profile tests, I can send you a link to 
a small GAE app, which you can run (using the GAE SDK) and check results.

cheers,
arun

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference