well, i can say that it had one begin/merge/end under wiki.d, and one begin/merge/end under wikilib.d, for each item in the list (so 6 printouts for each item in each list).
However, I implemented all the fixes you suggested above, and virtually all of those PageStore::ls calls went away. Now, that same page I send before (although it was shortened) now looks like this: 0: 00.00 MarkupToHTML begin 1: 00.04 FPLTemplate: Chain begin 2: 00.04 FPLTemplate: FPLTemplateLoad 3: 00.04 FPLTemplate: FPLTemplateDefaults 4: 00.04 FPLTemplate: FPLTemplatePageList 5: 00.04 MakePageList pre 6: 00.04 PageListCache begin load key=1783098ec26df5f43fd5bcac95c061aa 7: 00.04 PageListCache end load 8: 00.04 PageListSources begin 9: 00.04 PageListSources end count=10 10: 00.04 PageListSort pre ret=6 order=-MemoryBandwidth 11: 00.04 MakePageList items count=10, filters=PageListSort 12: 00.05 MakePageList post count=10, readc=10 13: 00.05 PageListSort begin 14: 00.05 PageListSort sort 15: 00.07 PageListSort end 16: 00.07 MakePageList end 17: 00.07 FPLTemplate: FPLTemplateSliceList 18: 00.07 FPLTemplate: FPLTemplateFormat 19: 00.08 MarkupToHTML begin 20: 00.34 MarkupToHTML end 21: 00.34 FPLTemplate: Chain end 22: 00.36 FPLTemplate: Chain begin 23: 00.36 FPLTemplate: FPLTemplateLoad 24: 00.36 FPLTemplate: FPLTemplateDefaults 25: 00.36 FPLTemplate: FPLTemplatePageList 26: 00.36 MakePageList pre 27: 00.36 PageListCache begin load key=729968a4400968ea344e325d72bb64a6 28: 00.36 PageListCache end load 29: 00.36 PageListSources begin 30: 00.36 PageListSources end count=21 31: 00.36 PageListSort pre ret=6 order=-blpf 32: 00.36 MakePageList items count=21, filters=PageListSort 33: 00.37 MakePageList post count=21, readc=21 34: 00.37 PageListSort begin 35: 00.37 PageListSort sort 36: 00.50 PageListSort end 37: 00.50 MakePageList end 38: 00.50 FPLTemplate: FPLTemplateSliceList 39: 00.50 FPLTemplate: FPLTemplateFormat 40: 00.53 MarkupToHTML begin 41: 01.46 MarkupToHTML end 42: 01.46 FPLTemplate: Chain end 43: 01.46 FPLTemplate: Chain begin 44: 01.46 FPLTemplate: FPLTemplateLoad 45: 01.47 FPLTemplate: FPLTemplateDefaults 46: 01.47 FPLTemplate: FPLTemplatePageList 47: 01.47 MakePageList pre 48: 01.47 PageListCache begin load key=4f226cae0703642f71bbc1f4b24f50a0 49: 01.47 PageListCache end load 50: 01.47 PageListSources begin 51: 01.47 PageListSources end count=19 52: 01.47 PageListSort pre ret=6 order=-blpf 53: 01.47 MakePageList items count=19, filters=PageListSort 54: 01.48 MakePageList post count=19, readc=19 55: 01.48 PageListSort begin 56: 01.48 PageListSort sort 57: 01.52 PageListSort end 58: 01.52 MakePageList end 59: 01.52 FPLTemplate: FPLTemplateSliceList 60: 01.52 FPLTemplate: FPLTemplateFormat 61: 01.53 MarkupToHTML begin 62: 02.01 MarkupToHTML end 63: 02.01 FPLTemplate: Chain end 64: 02.02 FPLTemplate: Chain begin 65: 02.02 FPLTemplate: FPLTemplateLoad 66: 02.02 FPLTemplate: FPLTemplateDefaults 67: 02.02 FPLTemplate: FPLTemplatePageList 68: 02.02 MakePageList pre 69: 02.02 PageListCache begin load key=d093679bf99dbfd97c5f8b6ad7c13667 70: 02.02 PageListCache end load 71: 02.02 PageListSources begin 72: 02.02 PageListSources end count=21 73: 02.02 PageListSort pre ret=6 order=-blpf 74: 02.02 MakePageList items count=21, filters=PageListSort 75: 02.03 MakePageList post count=21, readc=21 76: 02.03 PageListSort begin 77: 02.03 PageListSort sort 78: 02.08 PageListSort end 79: 02.08 MakePageList end 80: 02.08 FPLTemplate: FPLTemplateSliceList 81: 02.08 FPLTemplate: FPLTemplateFormat 82: 02.10 MarkupToHTML begin 83: 02.63 MarkupToHTML end 84: 02.63 FPLTemplate: Chain end 85: 02.64 MarkupToHTML end 86: 02.65 MarkupToHTML begin 87: 02.81 MarkupToHTML end 88: 02.81 MarkupToHTML begin 89: 02.84 MarkupToHTML end 90: 02.86 now That's not very fast, but not bad for a page with 4 pagelists on it, given what I now know about the expense of pagelists. Another change I made was moving the $WorkDir to a directory local to the machine (and not NFS mounted). That may have helped speed up pages also, pagelists or not. Not sure. All in all, your advice got me a significant improvement in speed. I'm happy for now, but if we wanted to optimize further, it looks like most of my page time is all in the "MarkupToHTML" calls, as this seems to be where almost all the big chunks of time is spent. Thanks so much for the help! If you have any ideas to get the time further reduced, let me know, but I'm mostly satisfied at this point. FG FG On Thu, Jan 5, 2012 at 2:34 PM, Patrick R. Michaud <[email protected]> wrote: > > On Thu, Jan 05, 2012 at 11:51:24AM -0600, Frank Graffagnino wrote: > > 4. Is there anything I can do to get rid of all those PageStore::ls calls? > > [...] > > 17: 00.08 FPLTemplate: FPLTemplateSliceList > > 18: 00.08 FPLTemplate: FPLTemplateFormat > > 19: 00.10 MarkupToHTML begin > > 20: 00.15 PageStore::ls begin wiki.d/{$FullName} > > 21: 00.18 PageStore::ls merge wiki.d/{$FullName} > > 22: 00.18 PageStore::ls end wiki.d/{$FullName} > > 23: 00.18 PageStore::ls begin $FarmD/wikilib.d/{$FullName} > > 24: 00.18 PageStore::ls merge $FarmD/wikilib.d/{$FullName} > > 25: 00.18 PageStore::ls end $FarmD/wikilib.d/{$FullName} > > 26: 00.18 PageStore::ls begin wiki.d/{$FullName} > > 27: 00.20 PageStore::ls merge wiki.d/{$FullName} > > 28: 00.20 PageStore::ls end wiki.d/{$FullName} > > 29: 00.20 PageStore::ls begin $FarmD/wikilib.d/{$FullName} > > 30: 00.20 PageStore::ls merge $FarmD/wikilib.d/{$FullName} > > 31: 00.20 PageStore::ls end $FarmD/wikilib.d/{$FullName} > > <... repeats a ton of times. Edited for brevity ... > > > 509: 03.82 MarkupToHTML end > > How many times does it repeat? In looking at the above, it appears > to me that the total time needed to perform a single PageStore::ls > sequence is only 0.05 seconds (0.20 - 0.15). It would be good to > know the timestamp for the *last* PageStore::ls that occurs, as that > gives an upper bound on the amount of time that would be saved by > eliminating PageStore::ls calls. > > Pm
_______________________________________________ pmwiki-users mailing list [email protected] http://www.pmichaud.com/mailman/listinfo/pmwiki-users
