Eclipse demo spends 30-40ms styling 300 elements (transform list conversion from rust to C++)
Categories
(Core :: CSS Parsing and Computation, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox68 | --- | fixed |
People
(Reporter: mayankleoboy1, Assigned: emilio)
References
()
Details
Attachments
(3 files)
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0
Steps to reproduce:
- enable WR, picture caching
- Go to http://themaninblue.com/experiment/eclipse/
- Move the mouse around
Actual results:
animation is smooth. However, the gecko profiler shows quite a lot of time spent in styling.
https://perfht.ml/2SdP9S6 (with parallel styling disabled)
Expected results:
not so?
I am not sure how real world this is, or if the time spent is expected.
Feel free to RESOLVED INVALID this bug.
Reporter | ||
Comment 1•7 years ago
|
||
Reporter | ||
Comment 2•7 years ago
|
||
Emilio, WDYT?
(WR and picture caching are enabled because without WR, demo is super slow, and all the time is spent in gfx stuff)
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Comment 3•7 years ago
|
||
and this is profile with parallel styling : https://perfht.ml/2ScGq2z
Assignee | ||
Comment 4•7 years ago
|
||
Ugh, most of the time is spent in malloc() / free(), which is unfortunate.
I think this is not too terrible, but all the work I'm doing to switch us to not having to convert from the rust representation to the C++ representation should help quite a bit here.
Unfortunately transform is one of the toughest ones to crack though :)
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 5•6 years ago
|
||
This avoid the expensive conversion, and cleans up a bunch.
Further cleanup is possible, just not done yet to avoid growing the patch even
more.
Assignee | ||
Comment 6•6 years ago
|
||
We need this to auto-generate the copy-constructor for TransformOperation,
without which the patch wouldn't build.
Comment 7•6 years ago
|
||
\o/
Comment 9•6 years ago
|
||
Backed out 17 changesets (bug 1550554, bug 1549593, bug 1551991, bug 1529002) for failing multiple Android tests and Windows 2012 bustages
push that caused the backout: https://treeherder.mozilla.org/#/jobs?repo=autoland&resultStatus=testfailed%2Cbusted%2Cexception%2Cusercancel%2Crunnable&revision=35f91a9ea82af8ba15ea08996149bb871d6957f8
backout: https://hg.mozilla.org/integration/autoland/rev/283b94c196a15367f287fd7f2bb6c9b4bcad0b45
Comment 10•6 years ago
|
||
New failure "Assertion failure: _0.ptr->data.header.header == kArcSliceCanary (Uh?), at z:/build/build/src/obj-firefox/dist/include\mozilla/ServoStyleConstsInlines.h:118"
Failure link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=246826943&repo=autoland&lineNumber=993
Assignee | ||
Comment 11•6 years ago
|
||
Yeah, see bug 1550554 comment 11 for the explanation. Same mistake.
Comment 12•6 years ago
|
||
Comment 13•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/29c5fc63a9bf
https://hg.mozilla.org/mozilla-central/rev/02c806cb81d9
Description
•