[Framework-Team] Revisited: Some preliminary Plone 3.0 profiling results

Alexander Limi limi at plone.org
Tue Dec 5 06:51:27 UTC 2006


On Tue, 14 Nov 2006 05:53:11 -0800, Alexander Limi  
<limi at plone.org> wrote:

> I was prompted to do this when I discovered that anonymous view of Plone  
> 3.0 was about 30% slower than 2.5. Take these numbers as a general guide  
> only, it's still early in the 3.0 process, and there's bound to be lots  
> of improvement potential here.

Martin has now done some refactorings, here are the updated results.

> ANONYMOUS: 10 loads of front page, in seconds
>
> Template                               Total  Hits Per hit
> ==========================================================
> document_view.pt                       3.9707  10  0.3971
> plone_javascript_variables.js.pt       0.0441  10  0.0044
> portlet_navtree_macro.pt               0.0899  10  0.009
> portlets/browser/templates/column.pt   2.3798  20  0.119
> portlets/portlets/classic.pt           2.0051  50  0.0401
> portlets/portlets/events.pt            0.0221  10  0.0022
> portlets/portlets/login.pt             0.2678  10  0.0268
> portlets/portlets/news.pt              0.021   10  0.0021

Template                                Total  Hits Per hit
===========================================================
document_view.pt                        3.4215  10  0.3422
plone_javascript_variables.js.pt        0.0433  10  0.0043
portlets/browser/templates/column.pt    1.5769  20  0.0788
portlets/portlets/classic.pt            1.0014  40  0.025
portlets/portlets/events.pt             0.0221  10  0.0022
portlets/portlets/login.pt              0.256   10  0.0256
portlets/portlets/navigation.pt         0.2107  10  0.0211
portlets/portlets/navigation_recurse.pt 0.0625  10  0.0062
portlets/portlets/news.pt               0.0208  10  0.0021

Much better rendering times for the portlets, document_view marginally  
faster.

> Breakdown of document_view shows (same order/units as above):
> path: plone_view/globalize             0.232   10  0.0232

path: plone_view/globalize  	0.4314  	10  	0.04314

Slower? Strange indeed. Does it do more than it used to for anonymous? See  
below, it's faster for logged-in than it used to be.



> LOGGED IN: 10 loads of front page, in seconds
>
> Template                               Total  Hits Per hit
> ==========================================================
> contentmenu.pt                         3.476   10  0.3476
> document_view.pt                      10.563   10  1.0563
> plone_javascript_variables.js.pt      0.0464   10  0.0046
> portlet_navtree_macro.pt              0.0934   10  0.0093
>
> portlets/browser/templates/column.pt  3.0892   20  0.1545
> portlets/portlets/classic.pt          2.9249   50  0.0585
> portlets/portlets/events.pt           0.0211   10  0.0021
> portlets/portlets/login.pt            0.005    10  0.0005
> portlets/portlets/news.pt             0.0183   10  0.0018

Template                                Total  Hits Per hit
===========================================================
contentmenu.pt                          3.2258  10  0.3226
document_view.pt                        7.0318  10  0.7032
plone_javascript_variables.js.pt        0.0455  10  0.0046
portlets/browser/templates/column.pt    1.7239  20  0.0862
portlets/portlets/classic.pt            1.3606  40  0.034
portlets/portlets/events.pt             0.0203  10  0.002
portlets/portlets/login.pt              0.0047  10  0.0005
portlets/portlets/navigation.pt         0.1999  10  0.02
portlets/portlets/navigation_recurse.pt 0.0619  10  0.0062
portlets/portlets/news.pt               0.0184  10  0.0018

Same improvements in the portlets and document_view, still insane  
rendering times because of the versioning stuff, marginal improvements in  
contentmenu.

> Breakdown of document_view shows (same order/units as above):
> path: plone_view/globalize            0.8519s  10  0.08519s

path: plone_view/globalize  	0.3627  	10  	0.03627

Much better. :)

> So for logged-in, "globalize" and the versioning stuff seems to be the  
> two biggest offenders by an order of magnitude, and seem to both take  
> about the same amount of time.

We should be able to move the versioning stuff to its tab, and globalize  
seems over twice as fast now for logged-in users. Curious about the  
results for anonymous, though.

> The portlets also seem to be inefficient both for logged in or not, but  
> a lot of this time is spent in classic.pt, which we should be able to  
> eliminate (since we should convert all the portlets to new-style  
> portlets before shipping the release). I'm not sure if column.pt  
> wraps/includes the classic.pt time.

Not sure how many portlets are still "classic", I saw that Hanno was  
working on the calendar portlet.

> Of course, all this might be wrong, but that's what happens when you let  
> the UI guy do your benchmarking. ;)

Caveat emptor, as usual. :)

-- 
_____________________________________________________________________

      Alexander Limi · Chief Architect · Plone Solutions · Norway

  Consulting · Training · Development · http://www.plonesolutions.com
_____________________________________________________________________

       Plone Co-Founder · http://plone.org · Connecting Content
   Plone Foundation · http://plone.org/foundation · Protecting Plone
 





More information about the Framework-Team mailing list