Closed Bug 1434213 Opened 7 years ago Closed 7 years ago

16.19 - 19.2% Stylo Servo_DeclarationBlock_SetPropertyById_Bench / Stylo Servo_DeclarationBlock_SetPropertyById_WithInitialSpace_Bench (windows7-32) regression on push 4f292fa4e4a3 (Thu Jan 25 2018)

Categories

(Core :: DOM: Workers, defect, P2)

58 Branch
x86
Windows 7
defect

Tracking

()

RESOLVED WONTFIX

People

(Reporter: igoldan, Unassigned)

References

Details

(Keywords: perf, regression)

We have detected a platform microbenchmarks regression from push: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=e74671f1779848ba07bf488d52da0782b8a579ae&tochange=4f292fa4e4a30c8ba0745cf9884dc08c098752c0 As author of one of the patches included in that push, we need your help to address this regression. Regressions: 19% Stylo Servo_DeclarationBlock_SetPropertyById_WithInitialSpace_Bench windows7-32 opt 526,690.50 -> 627,816.00 16% Stylo Servo_DeclarationBlock_SetPropertyById_Bench windows7-32 opt 523,743.42 -> 608,524.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=11302 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/Platform_Microbenchmarks
Component: Untriaged → DOM: Workers
Product: Firefox → Core
:baku It looks like bug 1425458 regressed these 2 tests on Windows 7 platform. Can you please investigate this issue, for a fix? I'm sorry it's a little old.
Flags: needinfo?(amarchesini)
These patches do not touch window objects at all. It seems unrelated. How is the regression range calculated? smaug, do you have any idea how this regression is connected with PerformanceStorageWrapper?
Flags: needinfo?(amarchesini) → needinfo?(bugs)
(In reply to Andrea Marchesini [:baku] from comment #2) > These patches do not touch window objects at all. It seems unrelated. How is > the regression range calculated?
Flags: needinfo?(bobbyholley)
really odd regression. Is it possible to push backout to tryserver to run servo tests there to see if it helps?
Flags: needinfo?(bugs)
igoldan can you please try to see if backing it out on a try push fixes the regression?
Flags: needinfo?(igoldan)
(In reply to Andrea Marchesini [:baku] from comment #6) > igoldan can you please try to see if backing it out on a try push fixes the > regression? Surely. I'll keep you informed.
Flags: needinfo?(igoldan)
I think bug 1425458 has been written over by other changesets. So I pushed to Try the previous changeset, to see if the regression reproduces there also.
Without bug 1425458?
Flags: needinfo?(bobbyholley) → needinfo?(igoldan)
(In reply to Andrea Marchesini [:baku] from comment #10) > Without bug 1425458? With bug 1425458, which is on the right side of the comparison view.
Flags: needinfo?(igoldan)
It makes no sense for that workers patch to actually affect that microbenchmark meaningfully, I'd think...
Yeah, this is quite weird, but try does seem to be giving reproducible results. I think we should at least try to understand what's going on here. igoldan, can you push a few more revisions to bisect the patches? It would be very interesting to know whether the slowdown comes with part 0, part 1, part 2, etc.
Flags: needinfo?(igoldan)
(In reply to Bobby Holley (:bholley) from comment #13) > Yeah, this is quite weird, but try does seem to be giving reproducible > results. I think we should at least try to understand what's going on here. > > igoldan, can you push a few more revisions to bisect the patches? It would > be very interesting to know whether the slowdown comes with part 0, part 1, > part 2, etc. Ok, will do.
Flags: needinfo?(igoldan)
It turns out the slowdown comes from part 0 and then persists on the following parts. This is a comparison between _non-bug 1425458_ and _part 0 of bug 1425458_ [1]. [1] https://treeherder.mozilla.org/perf.html#/compare?originalProject=try&originalRevision=8aa35fa30405&newProject=try&newRevision=0bb5ee3aec78&framework=6&filter=stylo
Flags: needinfo?(bobbyholley)
part 0 of bug 1425458 introduces a null param in NS_NewChannel. I don't see any relationship between that patch and this regression, but let's see what bholley says.
Priority: -- → P2
It looks like we've seen several other cases where gtest microbenchmarks are sensitive to entirely-unrelated changes on windows only. See bug 1415465 and bug 1429319 for examples. igoldan, can you verify that these tests are running on mac and linux, and that we don't see a corresponding regression on those platforms? If so, I'm inclined to WONTFIX this.
Flags: needinfo?(bobbyholley) → needinfo?(igoldan)
(In reply to Bobby Holley (:bholley) from comment #17) > It looks like we've seen several other cases where gtest microbenchmarks are > sensitive to entirely-unrelated changes on windows only. See bug 1415465 and > bug 1429319 for examples. > > igoldan, can you verify that these tests are running on mac and linux, and > that we don't see a corresponding regression on those platforms? If so, I'm > inclined to WONTFIX this. These tests do run on all desktop platforms. Indeed, there aren't any regressions on the other platforms. Even more, OS X notes some improvements.
Flags: needinfo?(igoldan)
(In reply to Ionuț Goldan [:igoldan], Performance Sheriffing from comment #18) > (In reply to Bobby Holley (:bholley) from comment #17) > > It looks like we've seen several other cases where gtest microbenchmarks are > > sensitive to entirely-unrelated changes on windows only. See bug 1415465 and > > bug 1429319 for examples. > > > > igoldan, can you verify that these tests are running on mac and linux, and > > that we don't see a corresponding regression on those platforms? If so, I'm > > inclined to WONTFIX this. > > These tests do run on all desktop platforms. Indeed, there aren't any > regressions > on the other platforms. Even more, OS X notes some improvements. Are these improvements similarly arbitrary to the regressions we see on windows? My hope was that the factors causing the numbers to jump around were limited to MSVC, and thus we could use the other platforms to measure regressions more reliably. In any case, sounds like this is WONTFIX.
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: needinfo?(igoldan)
Resolution: --- → WONTFIX
(In reply to Bobby Holley (:bholley) from comment #19) > Are these improvements similarly arbitrary to the regressions we see on > windows? My hope was that the factors causing the numbers to jump around > were limited to MSVC, and thus we could use the other platforms to measure > regressions more reliably. No, these improvements aren't arbitrary, don't worry about that. We can trust other platforms. If you want to know more, this is one OS X improvement [1]; it's was influenced by an update on the rust builders. [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1418081
Flags: needinfo?(igoldan)
(In reply to Ionuț Goldan [:igoldan], Performance Sheriffing from comment #20) > [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1418081 And this is the performance alert associated with bug 1418081: https://treeherder.mozilla.org/perf.html#/alerts?id=11278
(In reply to Ionuț Goldan [:igoldan], Performance Sheriffing from comment #20) > (In reply to Bobby Holley (:bholley) from comment #19) > > Are these improvements similarly arbitrary to the regressions we see on > > windows? My hope was that the factors causing the numbers to jump around > > were limited to MSVC, and thus we could use the other platforms to measure > > regressions more reliably. > > No, these improvements aren't arbitrary, don't worry about that. We can > trust other platforms. Ok, that's great news! In that case I don't personally object to turning off the microbenchmarks on windows if we think they're too noisy to be worthwhile.
(In reply to Bobby Holley (:bholley) from comment #22) > (In reply to Ionuț Goldan [:igoldan], Performance Sheriffing from comment > #20) > > (In reply to Bobby Holley (:bholley) from comment #19) > > > Are these improvements similarly arbitrary to the regressions we see on > > > windows? My hope was that the factors causing the numbers to jump around > > > were limited to MSVC, and thus we could use the other platforms to measure > > > regressions more reliably. > > > > No, these improvements aren't arbitrary, don't worry about that. We can > > trust other platforms. > > Ok, that's great news! In that case I don't personally object to turning off > the microbenchmarks on windows if we think they're too noisy to be > worthwhile. This sounds like a new bug. Do you agree with us turning off microbenchmarks on Windows?
Flags: needinfo?(jmaher)
I am in favor of turning off some (all if needed) gtests on windows.
Flags: needinfo?(jmaher)
See Also: → 1436018
You need to log in before you can comment on or make changes to this bug.