Open Bug 1953717 Opened 1 month ago Updated 21 days ago

High CPU load on GitHub pull request pages when checks actively running and showing the progress spinners

Categories

(Core :: Performance: General, defect)

defect

Tracking

()

Performance Impact low

People

(Reporter: whimboo, Unassigned)

References

(Blocks 1 open bug)

Details

(Keywords: perf)

Attachments

(1 file)

On GitHub PR pages when checks are running you can see the spinner icon animating for each and every task. Observing the CPU load on a page like https://github.com/mozilla/mozdownload/pull/713 when the checks for several jobs are running, I can see values around 50% all the time.

Here is a gecko profile as recorded when 4 of the checks were running until all of them are done:
https://share.firefox.dev/4iJwBWt

As Emilio stated on Matrix:

  • You have an abnormally high refresh rate (we're ticking vsync every 4ms or so, when it should be each ~16)
  • The animations are not getting throttled on the main thread

This should be related to:

@keyframes rotate-keyframes {
  100% {
    transform: rotate(360deg);
  }
}

.SpinnerAnimation {
  animation: rotate-keyframes var(--base-duration-1000) var(--base-easing-linear) infinite;
}

(In reply to Henrik Skupin [:whimboo][⌚️UTC+2] from comment #0)

  • You have an abnormally high refresh rate (we're ticking vsync every 4ms or so, when it should be each ~16)

I'm seeing vsync markers every 8 or so ms in the profile. That's 120Hz, which is typical for recent macbooks.

Please note that I have a MBP M4 and in the display settings ProMotion is selected by default which basically means it's a 120Hz refresh rate.

Yeah, I was just asking Henrik about that :)

Attached file Attempt at a test-case

Can you see the issue with this Henrik? I see more flushes than I'd expect, but not continuous like in your profile...

Flags: needinfo?(hskupin)

Here is a Gecko profile when having this testcase open: https://share.firefox.dev/3DHhONl

Flags: needinfo?(hskupin)

Emilio, is that the information you were looking for? Or do I have to provide something else?

The severity field is not set for this bug.
:bas.schouten, could you have a look please?

For more information, please visit BugBot documentation.

Flags: needinfo?(bas)

(In reply to Henrik Skupin [:whimboo][⌚️UTC+2] from comment #6)

Emilio, is that the information you were looking for? Or do I have to provide something else?

Happy to further help if more details are needed.

Flags: needinfo?(emilio)

No, that profile helps, but that means that the throttling is working, and something in the github case is causing the throttling not to work..

Flags: needinfo?(emilio)

The Performance Impact Calculator has determined this bug's performance impact to be low. If you'd like to request re-triage, you can reset the Performance Impact flag to "?" or needinfo the triage sheriff.

Platforms: Windows
Websites affected: Major
Resource impact: Some

Severity: -- → S3
Performance Impact: --- → low
Flags: needinfo?(bas)

(In reply to Bas Schouten (:bas.schouten) from comment #10)

Platforms: Windows

Please note that this is not only Windows. I can see it - and filed it - on MacOS.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: