On 11/04/2014 19:57, "Reyna, David" <[email protected]> wrote:
>Yeow! All of 1 second render time on my slow host! > > 1397242146.23:RECIPES > 1397242147.32 delta: 1.09702301025: RECIPES > >I have updated my commit with your change: dreyna/recipes_loadtime_61 Very impressive :) > >- David > >From: Damian, Alexandru [mailto:[email protected]] > >Sent: Friday, April 11, 2014 11:05 AM >To: Reyna, David >Cc: BARROS PENA, BELEN; Lerner, Dave; [email protected] >Subject: Re: [Toaster] [review-request] V2: 6137 excessive load time for >All Recipes page > > > >Hello, > > > >I have a small modification to David's patch that improves the loading >time about 5-fold compared to his latest version, from 5 seconds to less >than 1 second on my laptop. > > > >The trick used is to bring the whole list of dependencies for the entire >recipe list in a single call, and do the match manually, instead of >getting a call per recipe. > > > >This approach allows the code to perform constant lookup times >independent of number of rows. > > > >Since I can't push to contrib on my laptop (something funky about keys), >I'm attaching the patch for review. > > > >Please let me know how it goes. > > > >Cheers, > >Alex > > > >On Fri, Apr 11, 2014 at 5:26 PM, Reyna, David <[email protected]> >wrote: >Hi Belén, > >> page still seems to be performing much worse than all other pages. >>Should >> we be trying to fix the root cause of the problem, ie. the "100*(2+2) >> foreign key lookups and filters/count"? > >If we stay with the current design of the page, then I think the solution >is along the lines: > > 1. Add two fields to the Recipe class to hold the respective forward >and reverse counts to support instant lookup. These values are fixed when >the build completes so they can be consider constant for our purposes, >plus they would add very little overhead > to the database (if you can get this proposal past Alex). An alternate >implementation to keep the database pristine is to add the ability to >cache information like this in some runtime table, so that the >calculation time is only spent once. > > 2. Add a dynamic lookup of a given forward or reverse dependency list >when one of those buttons are clicked. In this manner we only spend the >list computation time when explicitly asked, not for every recipe whether >they want it or not. > >- David > >> -----Original Message----- >> From: Barros Pena, Belen [mailto:[email protected]] > >> Sent: Friday, April 11, 2014 5:41 AM >> To: Reyna, David; Lerner, Dave >> Cc: [email protected] > >> Subject: Re: [review-request] V2: 6137 excessive load time for All >>Recipes >> page >> > >> On 11/04/2014 01:44, "Reyna, David" <[email protected]> wrote: >> >> >Here are the timing results on my slow host for the rendering time: >> > >> > (a) Original: 13 seconds >> > (b) V1 : 7 seconds >> > (c) V2 : 4 seconds >> >> This is obviously a huge improvement. What bothers me is that the >>Recipes >> page still seems to be performing much worse than all other pages. >>Should >> we be trying to fix the root cause of the problem, ie. the "100*(2+2) >> foreign key lookups and filters/count"? >> >> Thanks! >> >> Belén >> > >-- >_______________________________________________ >toaster mailing list >[email protected] >https://lists.yoctoproject.org/listinfo/toaster > > > > > > > > >-- >Alex Damian >Yocto Project > >SSG / OTC > > > > > -- _______________________________________________ toaster mailing list [email protected] https://lists.yoctoproject.org/listinfo/toaster
