Closed
Bug 348482
Opened 18 years ago
Closed 18 years ago
Exponential time rendering with float and margin
Categories
(Core :: Layout, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: jruderman, Unassigned)
References
Details
(Keywords: hang, testcase, Whiteboard: [reflow-refactor])
Attachments
(1 file)
1.67 KB,
application/xhtml+xml
|
Details |
This testcase generates something like
<div style="margin: 40px;"><span style="float: right">
<div style="margin: 40px;"><span style="float: right">
<div style="margin: 40px;"><span style="float: right">
for a given number of repetitions. The amount of time it takes to render looks roughly exponential in the number of repetitions:
20 -> 433 ms
21 -> 1164 ms
22 -> 1487 ms
23 -> 2770 ms
24 -> 9938 ms
25 -> 10630 ms
26 -> 23285 ms
Reporter | ||
Comment 1•18 years ago
|
||
Comment 2•18 years ago
|
||
This looks like it's fixed by the reflow branch. In general, any nesting of things that are doing shrink-wrap width sizing will lead to exponential behavior on trunk and linear behavior on the reflow branch... Examples would be floats, buttons, absolutely positioned elements, and so forth.
Here's my data:
With my profiling build:
19 -> 3234ms
20 -> 7178ms
21 -> 16902ms
With an identically configured reflow branch profiling build on the same hardware:
20 -> under 400
30 -> under 400
100 -> under 400
500 -> 612ms
1000 -> 1029ms
2000 -> 2297ms
10000 -> stack overflow crash, looks like.
Whiteboard: [reflow-refactor]
Reporter | ||
Comment 3•18 years ago
|
||
Yep, seems fast and linear now that reflow branch has landed.
Reporter | ||
Updated•18 years ago
|
Flags: in-testsuite?
You need to log in
before you can comment on or make changes to this bug.
Description
•