0.47% installer size (osx-shippable) regression on push 65cf656ecce94b8c8bc4933cf57eb760a3b8d10f (Wed December 18 2019)
Categories
(Firefox Build System :: General, defect)
Tracking
(firefox-esr68 unaffected, firefox71 unaffected, firefox72 unaffected, firefox73 fixed)
Tracking | Status | |
---|---|---|
firefox-esr68 | --- | unaffected |
firefox71 | --- | unaffected |
firefox72 | --- | unaffected |
firefox73 | --- | fixed |
People
(Reporter: marauder, Assigned: chmanchester)
References
(Regression)
Details
(Keywords: perf-alert, regression)
Attachments
(1 file)
(deleted),
text/x-phabricator-request
|
Details |
We have detected a build metrics regression from push:
As author of one of the patches included in that push, we need your help to address this regression.
Regressions:
0.47% installer size osx-shippable opt nightly 80,834,640.75 -> 81,211,369.58
You can find links to graphs and comparison views for each of the above tests at: https://treeherder.mozilla.org/perf.html#/alerts?id=24523
On the page above you can see an alert for each affected platform as well as a link to a graph showing the history of scores for this test. There is also a link to a treeherder page showing the jobs in a pushlog format.
To learn more about the regressing test(s), please see: https://developer.mozilla.org/en-US/docs/Mozilla/Performance/Automated_Performance_Testing_and_Sheriffing/Build_Metrics
*** Please let us know your plans within 3 business days, or the offending patch(es) will be backed out! ***
Reporter | ||
Comment 1•5 years ago
|
||
The regression is pretty small, maybe this is expected.
Chris what do you think?
Thanks!
Updated•5 years ago
|
Assignee | ||
Comment 2•5 years ago
|
||
Presumably due to additional inlining. erahm, do you think this is worth investigating?
Assignee | ||
Comment 3•5 years ago
|
||
Eric pointed out on slack that XUL is smaller according to our perfherder data. From looking at things locally it's significantly larger, although other things are smaller. We're reporting it as smaller because rust-size
doesn't include a big increase in __LINKEDIT
size. Still investigating.
Assignee | ||
Comment 4•5 years ago
|
||
There are a large number of symbols in the symbol table of the "after" build that weren't there before. Could this just be "different" inlining decisions?
Assignee | ||
Comment 5•5 years ago
|
||
Michael, does this sound like something we'd expect from turning on pgo for Rust? Do you have any tips for how I might investigate this further? Thanks!
Assignee | ||
Comment 6•5 years ago
|
||
(In reply to Chris Manchester (:chmanchester) from comment #4)
There are a large number of symbols in the symbol table of the "after" build that weren't there before. Could this just be "different" inlining decisions?
"large number" is about 300k.
Comment 7•5 years ago
|
||
A change in inlining decisions and thus larger or smaller output binaries is an expected result of PGO, yes. 300k additional symbols sounds like quite a bit though. Where exactly do those show up? __LINKEDIT
sounds like something related to symbol export. That should not be affected by inlining, I think. Are the new symbols all Rust symbols? What does an example look like?
Assignee | ||
Comment 8•5 years ago
|
||
I was a little off, it's more like 65k symbols. I noticed https://searchfox.org/mozilla-central/rev/ac43d7e69a435ede789827f20ab309da6f04c09b/build/moz.configure/lto-pgo.configure#247 along the way, and adjusting that down to 10 to match other platforms fixes the size regression (although not in __LINKEDIT
, interestingly).
Assignee | ||
Comment 9•5 years ago
|
||
Updated•5 years ago
|
Comment 10•5 years ago
|
||
Comment 11•5 years ago
|
||
bugherder |
Reporter | ||
Comment 12•5 years ago
|
||
Hey Chris,
There is a new alert that seems to be related to your last changes:
== Change summary for alert #24579 (as of Mon, 23 Dec 2019 10:04:12 GMT) ==
Regressions:
7% perf_reftest_singletons id-getter-2.html macosx1014-64-shippable opt e10s stylo 818.91 -> 876.96
6% perf_reftest_singletons id-getter-1.html macosx1014-64-shippable opt e10s stylo 488.50 -> 518.27
6% perf_reftest_singletons id-getter-2.html macosx1014-64-shippable opt e10s stylo 824.20 -> 874.43
For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=24579
Reporter | ||
Updated•5 years ago
|
Reporter | ||
Comment 13•5 years ago
|
||
There is also an improvement:
== Change summary for alert #24574 (as of Sat, 21 Dec 2019 18:40:02 GMT) ==
Improvements:
16% build times osx-shippable opt nightly taskcluster-c5d.4xlarge 3,386.36 -> 2,860.27
For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=24574
Assignee | ||
Comment 14•5 years ago
|
||
These two benchmarks show a small regression, but they're still at an improvement from before pgo landed. This patch fixed the installer size regression as well, so I don't think we should consider a backout.
Reporter | ||
Comment 15•5 years ago
|
||
Yes, perfherder created an improvement alert for installer size:
== Change summary for alert #24584 (as of Mon, 23 Dec 2019 14:19:52 GMT) ==
Improvements:
3% installer size osx-shippable opt nightly 81,214,321.00 -> 79,141,694.25
For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=24584
I closed the regression alert and marked it as fixed.
Thank you Chris!
Description
•