Closed Bug 1290502 Opened 9 years ago Closed 9 years ago

3.6 - 3.66% tp5n main_startup_fileio (windows7-32) regression on push 281bbbf61f36 (Thu Jul 28 2016)

Categories

(Firefox :: Untriaged, defect)

50 Branch
defect
Not set
normal

Tracking

()

VERIFIED FIXED
Firefox 51
Tracking Status
firefox47 --- unaffected
firefox48 --- unaffected
firefox49 --- unaffected
firefox50 --- fixed
firefox51 --- verified

People

(Reporter: jmaher, Unassigned)

References

Details

(Keywords: perf, regression, talos-regression)

Attachments

(1 file)

Talos has detected a Firefox performance regression from push 281bbbf61f36. As author of one of the patches included in that push, we need your help to address this regression. Summary of tests that regressed: tp5n main_startup_fileio windows7-32 opt - 3.66% worse tp5n main_startup_fileio windows7-32 opt e10s - 3.6% worse You can find links to graphs and comparison views for each of the above tests at: https://treeherder.mozilla.org/perf.html#/alerts?id=2128 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 Talos jobs in a pushlog format. To learn more about the regressing test(s), please see: https://wiki.mozilla.org/Buildbot/Talos/Tests For information on reproducing and debugging the regression, either on try or locally, see: https://wiki.mozilla.org/Buildbot/Talos/Running *** Please let us know your plans within 3 business days, or the offending patch(es) will be backed out! *** Our wiki page outlines the common responses and expectations: https://wiki.mozilla.org/Buildbot/Talos/RegressionBugsHandling
:mshal, I assume this is intended, but I would like to hear from you if we intended to increase the fileio (usually read) on the main thread during startup.
Flags: needinfo?(mshal)
Hmm, this looks fairly similar to bug 1264276, though this time for some reason entries are being added multiple times in dependentlibs.list: $ cat bad/firefox/dependentlibs.list | sort | uniq -c 4 api-ms-win-crt-convert-l1-1-0.dll 3 api-ms-win-crt-environment-l1-1-0.dll 2 api-ms-win-crt-filesystem-l1-1-0.dll 1 api-ms-win-crt-heap-l1-1-0.dll 1 api-ms-win-crt-locale-l1-1-0.dll 3 api-ms-win-crt-math-l1-1-0.dll 1 api-ms-win-crt-multibyte-l1-1-0.dll 4 api-ms-win-crt-runtime-l1-1-0.dll 4 api-ms-win-crt-stdio-l1-1-0.dll 4 api-ms-win-crt-string-l1-1-0.dll 2 api-ms-win-crt-time-l1-1-0.dll 2 api-ms-win-crt-utility-l1-1-0.dll 1 lgpllibs.dll 2 mozglue.dll 2 MSVCP140.dll 1 nss3.dll 3 VCRUNTIME140.dll 1 xul.dll (They should all be '1') It's definitely not intended - I'm currently looking into it.
Flags: needinfo?(mshal)
The problem was there were checks to avoid duplicates, but when I switched it to use full paths internally (in order to pass the paths back to mozbuild), these checks were broken. Switching to a dict of 'filename: fullpath' seems to be much simpler and works with the de-duping.
This regression patch 281bbbf61f36 has been merged into Aurora, so please make sure to uplift any fixes to Aurora, thank you. https://treeherder.mozilla.org/perf.html#/alerts?id=2185 tp5n main_startup_fileio windows7-32 pgo - 5.08% worse tp5n main_startup_fileio windows7-32 pgo e10s - 5.02% worse
Comment on attachment 8776177 [details] Bug 1290502 - Avoid duplicate entries in dependentlibs.list; https://reviewboard.mozilla.org/r/68074/#review65934
Attachment #8776177 - Flags: review?(ted) → review+
Pushed by mshal@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9d5365ee6944 Avoid duplicate entries in dependentlibs.list; r=ted
I'm looking into it - not sure what happened. I only ran builds on try, not tests.
Flags: needinfo?(mshal)
So it turns out the order of libraries in dependentlibs.list matters. Switching from a dict to an OrderedDict seems to work.
Comment on attachment 8776177 [details] Bug 1290502 - Avoid duplicate entries in dependentlibs.list; Review request updated; see interdiff: https://reviewboard.mozilla.org/r/68074/diff/1-2/
Attachment #8776177 - Flags: review+ → review?(ted)
Attachment #8776177 - Flags: review?(ted) → review+
Pushed by mshal@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2eb3854c6c47 Avoid duplicate entries in dependentlibs.list; r=ted
This fix did have an improvement: https://treeherder.mozilla.org/perf.html#/alerts?id=2249 Summary of tests that improved: tp5n main_startup_fileio windows7-32 opt - 3.54% better tp5n main_startup_fileio windows7-32 opt e10s - 3.57% better Thank you for this patch!
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 51
we should consider uplifting this to aurora, :mshal- any concerns with doing that?
Flags: needinfo?(mshal)
(In reply to Joel Maher ( :jmaher ) from comment #16) > we should consider uplifting this to aurora, :mshal- any concerns with doing > that? Nope, hopefully it just works :)
Flags: needinfo?(mshal)
Comment on attachment 8776177 [details] Bug 1290502 - Avoid duplicate entries in dependentlibs.list; Approval Request Comment [Feature/regressing bug #]: [User impact if declined]: [Describe test coverage new/current, TreeHerder]: [Risks and why]: [String/UUID change made/needed]: I am not sure about all these things- maybe :mshal or :ted could highlight any possible differences for the Approval request comment. Overall, this fixes a file IO regression that landed shortly before the merge to aurora.
Attachment #8776177 - Flags: approval-mozilla-aurora?
Bug 1254115 was supposed to be a build config only change, with identical output. Until the patch in this bug, I didn't quite get the "identical output" part right though :). So if we're happy now with how things look on central, I think there should be no impact to uplift this to aurora, and we should do so to prevent the startup time regression from being released.
Hi Joel, could you please confirm that this fix addresses the perf regression that we noticed? If yes, I can approve uplift to Aurora. Thanks!
Flags: needinfo?(jmaher)
I have verified this is fixed on nightly! thanks for checking :)
Flags: needinfo?(jmaher)
(In reply to Joel Maher ( :jmaher ) from comment #21) > I have verified this is fixed on nightly! thanks for checking :) Great! Thanks.
Status: RESOLVED → VERIFIED
Comment on attachment 8776177 [details] Bug 1290502 - Avoid duplicate entries in dependentlibs.list; Perf regression that was verified on Nightly, Aurora50+
Attachment #8776177 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: