Closed
Bug 1357242
Opened 7 years ago
Closed 5 years ago
Make initial browser remote by default in XUL markup
Categories
(Firefox :: General, enhancement, P4)
Firefox
General
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: mconley, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [fxperf:p2])
Attachments
(1 file)
Bug 1357242 - Make initial browser tab remote by default instead of flipping it in DOMContentLoaded.
59 bytes,
text/x-review-board-request
|
Details |
I suspect part of our start-up overhead is caused by a hack I introduced in bug 1261842, where when a new browser window opens, we wait on DOMContentLoaded, and swap out the initial non-remote browser for a remote one if gMultiprocessBrowser is true. That hack was originally introduced to mitigate a tpaint regression where the DestroyWindow runnable for the initial <xul:browser> would delay the parent from being able to answer messages from the content process. If I remember correctly, it's not as simple as just putting remote="true" on that initial browser, but I can't remember the complication. We should revisit this and find out.
Updated•7 years ago
|
Flags: qe-verify?
Priority: -- → P2
Updated•7 years ago
|
Assignee: nobody → mconley
Status: NEW → ASSIGNED
Iteration: --- → 55.4 - May 1
Flags: qe-verify? → qe-verify-
Priority: P2 → P1
Comment hidden (obsolete) |
Reporter | ||
Comment 2•7 years ago
|
||
According to this profile: https://perf-html.io/public/75cea1de7333eb66c69f39778d9c21d21e3c2b67/calltree/?callTreeFilters=prefix-012345KryWmyWnyWoFQuyL6EI1yL8yL9yLaAYrEN1EDczAjzAkzAlzAmzAnEArzO0zO1zO2zOezOfzOgADvxGgxGhAB2AB3AB4AOkAOlAOmAOnAOoAOpDY2EVcAOsDSnENrAOvzB9OrxWnJkAP0AP1&thread=0 on my high-powered MBP, the updateBrowserRemoteness call on the initial window costs about 57ms.
Reporter | ||
Comment 3•7 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=28bb0c49a2ba3fc89298abe7cd4e9c2caafa296d
Updated•7 years ago
|
Iteration: 55.4 - May 1 → 55.5 - May 15
Updated•7 years ago
|
Iteration: 55.5 - May 15 → 55.6 - May 29
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Reporter | ||
Comment 6•7 years ago
|
||
I've got this working in the e10s case. Unsurprisingly, it's blowing up the non-e10s case. https://treeherder.mozilla.org/#/jobs?repo=try&revision=1b833aafc8953c623a39ae3e785d364d5d72f58c
Reporter | ||
Comment 7•7 years ago
|
||
Preliminary results suggest that this gives a nice win on the tpaint talos benchmark. I don't think it moves the ts_paint one much.
Reporter | ||
Comment 8•7 years ago
|
||
I'll do a comparison push to try for more certainty on that last comment. If it turns out that this doesn't affect ts_paint, we can probably remove this as blocking photon-startup.
Reporter | ||
Comment 9•7 years ago
|
||
Baseline: https://treeherder.mozilla.org/#/jobs?repo=try&revision=acfeb20706c125c1c207f3d5d994a504405a56d1 Patch: https://treeherder.mozilla.org/#/jobs?repo=try&revision=a13194cc40f8b7952199b78b847baa24bff2842b Comparison: https://treeherder.mozilla.org/perf.html#/compare?originalProject=try&originalRevision=acfeb20706c125c1c207f3d5d994a504405a56d1&newProject=try&newRevision=a13194cc40f8b7952199b78b847baa24bff2842b&framework=1&showOnlyImportant=0
Reporter | ||
Comment 10•7 years ago
|
||
The comparison shows a nice win on Linux64 and Windows for tpaint (window opening), but not for ts_paint (initial window opening). In fact, I see a small loss for Linux64 on that particular test with this patch. I don't think this belongs under photon-startup anymore. We probably want to do this at some point, but I don't think it's going to help our start-up time right just yet.
No longer blocks: photon-startup
Updated•7 years ago
|
Iteration: 55.6 - May 29 → 55.7 - Jun 12
Updated•7 years ago
|
Assignee: mconley → nobody
Status: ASSIGNED → NEW
Iteration: 55.7 - Jun 12 → ---
Priority: P1 → P3
Whiteboard: [photon-performance] → [reserve-photon-performance]
Updated•7 years ago
|
Priority: P3 → P4
Reporter | ||
Updated•6 years ago
|
Whiteboard: [reserve-photon-performance] → [fxperf]
Comment 11•6 years ago
|
||
The non-remote browser constructor is more expensive than I would like; it triggers an about:blank load (bug 1446957). I think this bug still makes a lot of sense, but I would probably wait until bug 1446161 is fixed so that creating a remote browser doesn't block the main thread for the duration of the content process creation.
Comment 12•5 years ago
|
||
We've done this work in bug 1506608 and friends, and although it's not in markup, it is now remote as soon as it gets inserted into the DOM, so gonna mark this WFM.
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•