3.15 - 3.96% Base Content Heap Unclassified (windows10-64-shippable, windows10-64-shippable-qr) regression on push 133ac0d11428079ceaeceab4dda050b4ba240e3b (Sat June 29 2019)
Categories
(Core :: WebVR, defect, P2)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox-esr60 | --- | unaffected |
| firefox-esr68 | --- | unaffected |
| firefox69 | --- | wontfix |
| firefox70 | --- | wontfix |
| firefox71 | --- | fixed |
| firefox72 | --- | fixed |
People
(Reporter: alexandrui, Assigned: daoshengmu)
References
(Regression)
Details
(Keywords: perf, perf-alert, regression)
Attachments
(1 file)
|
47 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta+
|
Details | Review |
We have detected an awsy regression from push:
As author of one of the patches included in that push, we need your help to address this regression.
Regressions:
4% Base Content Heap Unclassified windows10-64-shippable-qr opt 1,552,937.00 -> 1,614,421.33
4% Base Content Heap Unclassified windows10-64-shippable-qr opt 1,553,547.33 -> 1,614,604.00
3% Base Content Heap Unclassified windows10-64-shippable opt 1,574,870.33 -> 1,624,525.33
You can find links to graphs and comparison views for each of the above tests at: https://treeherder.mozilla.org/perf.html#/alerts?id=21696
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://wiki.mozilla.org/AWSY/Tests
| Reporter | ||
Updated•6 years ago
|
Comment 1•6 years ago
|
||
I am investigating this now.
Updated•6 years ago
|
Comment 3•6 years ago
|
||
(In reply to Alexandru Ionescu :alexandrui from comment #2)
Hi Kearwood, any news on this?
Refactoring which was included in that push merged several classes, which may have caused an increased allocation on initialization that would not have normally occurred until a WebVR/WebXR site becomes active. I haven't found a single source of allocation to the degree in the report, but have identified some ways that we can defer allocations until a WebVR/WebXR site becomes active.
I'll follow up with some patches shortly.
| Reporter | ||
Comment 4•6 years ago
|
||
Hi Kearwood. I assume you got somehow to a conclusion until now. Could you share it? Thanks.
Comment 5•6 years ago
|
||
(In reply to Alexandru Ionescu :alexandrui from comment #4)
Hi Kearwood. I assume you got somehow to a conclusion until now. Could you share it? Thanks.
Hello,
I apologize as my time has been spread thin recently. Investigation of this is still ongoing. Although it does not initially appear to account for the amount of memory in the report, it seems that the clearest way forward is to make some iterative changes that lazily initialize some of the VRManager related structures.
I will be starting PTO in a couple of weeks. If this is not resolved by then, I'll be sure to hand off my findings to others to continue until I am back.
| Reporter | ||
Updated•6 years ago
|
| Reporter | ||
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Comment 6•6 years ago
|
||
Hi Kearwood, could you give us an update please? thanks
Comment 7•6 years ago
|
||
I have returned from PTO. I'll bump this up my queue and/or see if my colleagues have made any discoveries.
| Assignee | ||
Comment 9•6 years ago
|
||
According to https://hg.mozilla.org/integration/autoland/pushloghtml?changeset=133ac0d11428079ceaeceab4dda050b4ba240e3b changset, that is related to our initial work for using command buffer for VR service tests. I guess we can take a look into the timing of this command buffer creation.
| Assignee | ||
Comment 10•6 years ago
|
||
I am going to work on this bug this week.
| Assignee | ||
Comment 11•6 years ago
|
||
| Assignee | ||
Comment 12•6 years ago
|
||
| Assignee | ||
Comment 13•6 years ago
|
||
The root cause is VRServiceHost::Shutdown() [1] will call PuppetRest(), then that will allocate the heap memory.
Comment 14•6 years ago
|
||
Comment 15•6 years ago
|
||
| bugherder | ||
Comment 16•6 years ago
|
||
Hi Daosheng, do you think this fix is a good candidate for an uplift to beta? If it is, please request the uplift, thanks.
| Assignee | ||
Comment 17•6 years ago
|
||
Comment on attachment 9107085 [details]
Bug 1562825 - Checking if puppet is active before initializing VR puppet command buffers.
Beta/Release Uplift Approval Request
- User impact if declined: My patch fixes the issue of redundant heap allocation, if denying it, the heap will continue to be allocated.
- Is this code covered by automated tests?: No
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): It is happened at VRServiceTest that usually be run when doing smog tests. This heap allocation is happened when FF is doing shutdown. Therefore, for general users, they can get back this 3% heap allocation after applying this patch also with very low risk.
- String changes made/needed:
Comment 18•6 years ago
|
||
Comment on attachment 9107085 [details]
Bug 1562825 - Checking if puppet is active before initializing VR puppet command buffers.
Fix for an awsy memory regression, patch is evaluated as low risk, uplift approved for 71 beta 10, thanks.
Comment 19•6 years ago
|
||
| bugherder uplift | ||
Updated•4 years ago
|
Description
•