Closed Bug 348482 Opened 18 years ago Closed 18 years ago

Exponential time rendering with float and margin

Categories

(Core :: Layout, defect)

PowerPC
macOS
defect
Not set
critical

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
Attached file testcase
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]
Yep, seems fast and linear now that reflow branch has landed.
Status: NEW → RESOLVED
Closed: 18 years ago
Depends on: reflow-refactor
Resolution: --- → FIXED
Flags: in-testsuite?
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: