[prev in list] [next in list] [prev in thread] [next in thread] 

List:       mozilla-layout
Subject:    Perf question (reflow branch)
From:       Boris Zbarsky <bzbarsky () mit ! edu>
Date:       2006-11-02 6:06:02
Message-ID: z_ydnQIQmYdWF9TYnZ2dnUVZ_sednZ2d () mozilla ! org
[Download RAW message or body]

So I was profiling the testcase for bug 352367 on the reflow branch, and about 
5% of total time is spent in in (not under!) nsRuleNode::GetStyleData.  Another 
4.5% of the time is spent in (not under) nsStyleContext::GetStyleData.  The 
total time spent under nsStyleContext::GetStyleData is about 10%, of course.

About half the calls to nsStyleContext::GetStyleData come from 
nsFrame::IntrinsicWidthOffsets, called by 
nsTableCellFrame::IntrinsicWidthOffsets and 
nsLayoutUtils::IntrinsicForContainer.  Ultimately, this gets back to 
GetWidthInfo() (under which about 20% of the total load time is spent).

I have to wonder whether we could do anything to reduce this.  Especially given 
that we're fetching the same structs in GetMinWidth and GetPrefWidth...  It 
basically looks like we're calling nsFrame::IntrinsicWidthOffsets at least 3 
times for each table cell...

-Boris
_______________________________________________
dev-tech-layout mailing list
dev-tech-layout@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-tech-layout
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic