[Framework-Team] Re: Revisited: Some preliminary Plone 3.0 profiling results
Hi again. Martin Aspeli wrote: > Hanno Schlichting wrote: > >> Just as a small update. I did some changes to the way the date/time >> formatting works and some more optimizations in PTS and >> PloneTranslations. You should remove all the catalogs in the PTS Control >> Panel once, to get the whole performance gain. >> >> While I have some more ideas, how to speed up some of the code in PTS, >> my current simple benchmark number is now at 5.7 requests/sec :) I worked a bit on my ideas on how to make PTS even faster and this resulted amongst other things in using the memoize_contextless decorator from plone.memoize.view for some functions in PTS. While I had to trick a bit as the PTS object is of course not a view, but an Acquisition-wrapped object, it was pretty simple in the end. Especially as there already has been quite some caching code that stored things in the request. > /me cheers Hanno's dedication > > We need to paint a go-faster stripe on it. That'll speed it up! > > Martin, going for 6 requests/second (w00t, speed of thought!) While we have seen some performance decrease by the merges of some recent bundles, I have been able to make Martin's dream come true nonetheless and we are now at 6.2 requests/sec :) Hanno, who still has some more ideas about how to speed things up ;) ___ Framework-Team mailing list Framework-Team@lists.plone.org http://lists.plone.org/mailman/listinfo/framework-team
[Framework-Team] Re: Revisited: Some preliminary Plone 3.0 profiling results
On Thu, 07 Dec 2006 15:18:08 -0800, Hanno Schlichting <[EMAIL PROTECTED]> wrote: Could you re-run your test suite, to give us some updated in-depth numbers? Sure. Here goes, with the previous results quoted: Anonymous, 10 page load of front page: TemplateTotal Hits Per hit === document_view.pt3.4215 10 0.3422 plone_javascript_variables.js.pt0.0433 10 0.0043 portlets/browser/templates/column.pt1.5769 20 0.0788 portlets/portlets/classic.pt1.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 TemplateTotal Hits Per hit === document_view.pt2.3318 10 0.2332 plone_javascript_variables.js.pt0.0362 10 0.0036 portlets/browser/templates/column.pt0.8706 20 0.0435 portlets/portlets/calendar.pt 0.4542 10 0.0454 portlets/portlets/events.pt 0.0216 10 0.0022 portlets/portlets/login.pt 0.1135 10 0.0114 portlets/portlets/navigation.pt 0.1927 10 0.0193 portlets/portlets/navigation_recurse.pt 0.0622 10 0.0062 portlets/portlets/news.pt 0.0202 10 0.002 portlets/portlets/recent.pt 0.0044 10 0.0004 portlets/portlets/review.pt 0.0043 10 0.0004 A very nice improvement. The main view is 1 second faster, the column.pt is twice as fast. Classic is gone. :) 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 path: plone_view/globalize 0.3136 10 0.03136 Seems to have speeded up globalize a bit too, but still slower than my initial benchmark (although I think it does more now). Logged in, 10 page load of the front page: TemplateTotal Hits Per hit === contentmenu.pt 3.2258 10 0.3226 document_view.pt7.0318 10 0.7032 plone_javascript_variables.js.pt0.0455 10 0.0046 portlets/browser/templates/column.pt1.7239 20 0.0862 portlets/portlets/classic.pt1.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 TemplateTotal Hits Per hit === document_view.pt6.4243 10 0.6424 plone_javascript_variables.js.pt0.0379 10 0.0038 contentmenu.pt 3.0057 10 0.3006 portlets/browser/templates/column.pt1.0863 20 0.0543 portlets/portlets/calendar.pt 0.4532 10 0.0453 portlets/portlets/events.pt 0.0206 10 0.0021 portlets/portlets/login.pt 0.0051 10 0.0005 portlets/portlets/navigation.pt 0.1941 10 0.0194 portlets/portlets/navigation_recurse.pt 0.0622 10 0.0062 portlets/portlets/news.pt 0.0187 10 0.0019 portlets/portlets/recent.pt 0.1997 10 0.02 portlets/portlets/review.pt 0.0918 10 0.0092 Again, about a half of the time in column.pt, a small reduction in document_view, and no classic.pt. :) 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 path: plone_view/globalize 0.4064 10 0.04064 About the same as before. I guess the next step is to move all the versioning and publishing history to a separate tab, combine them into the same overview, and rename the tab from Versions to History. Then we'll have a better impression of what the logged-in view cost is. :) (And again, note that I'm not benchmarking requests per second — I'm just locating the most expensive methods to see if we can improve them) -- _ 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 ___ Framework-Team mailing list Framework-T
[Framework-Team] Re: Revisited: Some preliminary Plone 3.0 profiling results
Hanno Schlichting wrote: Just as a small update. I did some changes to the way the date/time formatting works and some more optimizations in PTS and PloneTranslations. You should remove all the catalogs in the PTS Control Panel once, to get the whole performance gain. While I have some more ideas, how to speed up some of the code in PTS, my current simple benchmark number is now at 5.7 requests/sec :) /me cheers Hanno's dedication We need to paint a go-faster stripe on it. That'll speed it up! Martin, going for 6 requests/second (w00t, speed of thought!) ___ Framework-Team mailing list Framework-Team@lists.plone.org http://lists.plone.org/mailman/listinfo/framework-team
[Framework-Team] Re: Revisited: Some preliminary Plone 3.0 profiling results
Hi all. Hanno Schlichting wrote: > Martin Aspeli wrote: >> Hanno Schlichting wrote: >>> My simple benchmark shows a boost in performance from 4.0 requests/sec >>> to 5.2 requests/sec for a newly created site, which is now finally a tad >>> bit faster then the Plone 2.5 branch. >> Wasn't it 6 requests/sec before? > > Yes, but that was as I removed the recent, review and most importantly > calendar portlets altogether. The calendar portlet is still quite > resource intense, even if there's nothing to show. > > Once I remove the calendar portlet now, I get about 6.2 requests/sec. > The recent and review portlets don't make any noticeable difference. Just as a small update. I did some changes to the way the date/time formatting works and some more optimizations in PTS and PloneTranslations. You should remove all the catalogs in the PTS Control Panel once, to get the whole performance gain. While I have some more ideas, how to speed up some of the code in PTS, my current simple benchmark number is now at 5.7 requests/sec :) Hanno ___ Framework-Team mailing list Framework-Team@lists.plone.org http://lists.plone.org/mailman/listinfo/framework-team
[Framework-Team] Re: Revisited: Some preliminary Plone 3.0 profiling results
Martin Aspeli wrote: > Hanno Schlichting wrote: >> My simple benchmark shows a boost in performance from 4.0 requests/sec >> to 5.2 requests/sec for a newly created site, which is now finally a tad >> bit faster then the Plone 2.5 branch. > > Wasn't it 6 requests/sec before? Yes, but that was as I removed the recent, review and most importantly calendar portlets altogether. The calendar portlet is still quite resource intense, even if there's nothing to show. Once I remove the calendar portlet now, I get about 6.2 requests/sec. The recent and review portlets don't make any noticeable difference. Hanno P.S. In Plone < 3.0 the calendar portlet usually cost about 1 to 1.5 requests/sec, so it's bad but better now ;) ___ Framework-Team mailing list Framework-Team@lists.plone.org http://lists.plone.org/mailman/listinfo/framework-team
[Framework-Team] Re: Revisited: Some preliminary Plone 3.0 profiling results
Hanno Schlichting wrote: Alexander Limi wrote: 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. And while I was on it, I converted the last remaining classic portlets as well, so the calls to classic.pt are gone now. Great Hanno, thank you very much! My simple benchmark shows a boost in performance from 4.0 requests/sec to 5.2 requests/sec for a newly created site, which is now finally a tad bit faster then the Plone 2.5 branch. Wasn't it 6 requests/sec before? Could you re-run your test suite, to give us some updated in-depth numbers? Please do, limi! Martin ___ Framework-Team mailing list Framework-Team@lists.plone.org http://lists.plone.org/mailman/listinfo/framework-team
[Framework-Team] Re: Revisited: Some preliminary Plone 3.0 profiling results
Alexander Limi wrote: >> 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. And while I was on it, I converted the last remaining classic portlets as well, so the calls to classic.pt are gone now. My simple benchmark shows a boost in performance from 4.0 requests/sec to 5.2 requests/sec for a newly created site, which is now finally a tad bit faster then the Plone 2.5 branch. Could you re-run your test suite, to give us some updated in-depth numbers? Hanno ___ Framework-Team mailing list Framework-Team@lists.plone.org http://lists.plone.org/mailman/listinfo/framework-team
[Framework-Team] Re: Revisited: Some preliminary Plone 3.0 profiling results
Alexander Limi wrote: ANONYMOUS: 10 loads of front page, in seconds Template Total Hits Per hit == ... portlets/portlets/login.pt 0.2678 10 0.0268 ... portlets/portlets/login.pt 0.256 10 0.0256 This had a call to listFilteredActionsFor() again. Can you re-run the tests for equal comparison's sake? 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. I still can't figure out why this may be. Can you confirm it's still the case? Martin ___ Framework-Team mailing list Framework-Team@lists.plone.org http://lists.plone.org/mailman/listinfo/framework-team