Closed Bug 1967451 Opened 1 year ago Closed 1 year ago

4% glterrain (Linux) regression on Wed May 14 2025

Categories

(Core :: Graphics: WebRender, defect)

defect

Tracking

()

RESOLVED WONTFIX
Tracking Status
firefox-esr128 --- unaffected
firefox138 --- unaffected
firefox139 --- unaffected
firefox140 --- fix-optional
firefox141 --- fix-optional

People

(Reporter: intermittent-bug-filer, Unassigned)

References

(Regression)

Details

(5 keywords)

Perfherder has detected a talos performance regression from push 6be9c2492a2c6fca50a3bc6601dcde5116be244e. As author of one of the patches included in that push, we need your help to address this regression.

Please acknowledge, and begin investigating this alert within 3 business days, or the patch(es) may be backed out in accordance with our regression policy. Our guide to handling regression bugs has information about how you can proceed with this investigation.

If you have any questions or need any help with the investigation, please reach out to fbilt@mozilla.com. Alternatively, you can find help on Slack by joining #perf-help, and on Matrix you can find help by joining #perftest.

Regressions:

Ratio Test Platform Options Absolute values (old vs new)
4% glterrain linux1804-64-shippable-qr e10s fission stylo webrender 2.20 -> 2.29

Improvements:

Ratio Test Platform Options Absolute values (old vs new)
5% tscrollx windows11-64-24h2-shippable e10s fission stylo webrender 0.57 -> 0.54
4% tresize windows11-64-24h2-shippable e10s fission stylo webrender 4.71 -> 4.51
4% tsvgx linux1804-64-shippable-qr e10s fission stylo webrender 221.16 -> 212.85
3% tart windows11-64-24h2-shippable e10s fission stylo webrender 1.82 -> 1.77

Details of the alert can be found in the alert summary, including links to graphs and comparisons for each of the affected tests.

If you need the profiling jobs you can trigger them yourself from treeherder job view or ask fbilt@mozilla.com to do that for you.

You can run all of these tests on try with ./mach try perf --alert 45152

The following documentation link provides more information about this command.

Flags: needinfo?(stransky)

Set release status flags based on info from the regressing bug 1961724

Is the title of this bug innacurate? The comment seems to indicate an tsvgx improvement (amongst others), but a glterrain regression.

Seems the benefits likely outweigh the regressions, so I would assume we'd rather not back this out. But Martin, do you have any idea why it could have caused the glterrain regression?

Severity: -- → S3

Will look at it.

Summary: 3.76% tsvgx (Linux) regression on Wed May 14 2025 → 4% glterrain (Linux) regression on Wed May 14 2025

I wonder if it's related to GL fence we use in WebGL / dmabuf backend - I think the glFlush may speed up GL processing for WebGL so we don't wait at GL fence so long and we can recycle/paint faster then:

https://searchfox.org/mozilla-central/rev/02d33f4bf984f65bd394bfd2d19d66569ae2cfe1/gfx/gl/SharedSurfaceDMABUF.cpp#51

Hm, I'm unable to debug that glterrain locally as it needs python 3.11 but Fedora 42 ships 3.13. And Mozilla seems to ignore alternatives.

I usually use pyenv to force a specific python version whenever fedora's is too recent

Managed to test it locally, first numbers are with glFlush():

      "name": "glterrain",

         "name": "0.WebGL-terrain-alpha-no-AA-no",
         "value": 0.6824000000000001
          "value": 0.6852000000000005

          "name": "1.WebGL-terrain-alpha-no-AA-yes",
          "value": 1.0454999999999997
          "value": 1.0447000000000002

          "name": "2.WebGL-terrain-alpha-yes-AA-no",
          "value": 0.6995000000000005
          "value": 0.6663999999999999

          "name": "3.WebGL-terrain-alpha-yes-AA-yes",
          "value": 0.8072000000000026
          "value": 0.7852000000000021

      "value": 0.803075999509723
      "value": 0.7893149709856457

so I see improvement on my system without glFlush() (Fedora 42 / Wayland / Intel) as one may expect.
We may look why linux1804-64-shippable-qr has different results but it diverges from what we expect and what real scenario testing shows.

Flags: needinfo?(stransky)

I wonder if the first GL run (0.WebGL-terrain-alpha-no-AA-no) is hit somehow by missing glFlush() as it's the only one which shows worse results.

Flags: needinfo?(stransky)

Set release status flags based on info from the regressing bug 1961724

It has been over 7 days with no activity on this performance regression.

:stransky, since you are the author of the regressor, bug 1961724, which triggered this performance alert, could you please provide a progress update?

If this regression is something that fixes a bug, changes the baseline of the regression metrics, or otherwise will not be fixed, please consider closing it as WONTFIX. See this documentation for more information on how to handle regressions.

For additional information/help, please needinfo the performance sheriff who filed this alert (they can be found in comment #0), or reach out in #perftest, or #perfsheriffs on Element.

For more information, please visit BugBot documentation.

Flags: needinfo?(stransky)

Still under investigation.

Flags: needinfo?(stransky)
Flags: needinfo?(stransky)

I can't reproduce and it's part of improved/optimized GPU usage so let's keep it as is.

Status: NEW → RESOLVED
Closed: 1 year ago
Flags: needinfo?(stransky)
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.