Open Bug 1749647 Opened 3 years ago Updated 2 years ago

Frame hitching on 360Hz monitor

Categories

(Core :: Graphics: WebRender, defect)

Firefox 96
x86_64
Windows 10
defect

Tracking

()

UNCONFIRMED

People

(Reporter: dragos.slash, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0

Steps to reproduce:

Firefox exhibits frame hitching on a 360Hz monitor during operations such as (smooth) scrolling or using autoscroll. It happens maybe every second, or even twice per second, there is one frame which is being shown for a longer amount of time.

Profiler > Graphics
https://share.firefox.dev/3GpszzV

Machine is using an i7-11800H, RTX3080, Windows 10 21h2 with the latest video drivers and updates as of today. It is using a 1920x1080 360Hz display. I cannot reproduce this issue in Chromium based browsers, or any other part of the OS.

Actual results:

Firefox exhibits frame time passing, where not all 360 frames are given an equal amount of display time within a second.

Expected results:

All 360 frames should have an equal amount of display time within a second, about 2.77ms per frame.

Component: Untriaged → General
OS: Unspecified → Windows 10
Hardware: Unspecified → x86_64
Component: General → Graphics
Product: Firefox → Core
Blocks: gfx-triage
Severity: -- → S3
Blocks: wr-refresh-rate
No longer blocks: gfx-triage

What page is your profile from? Can you also attach the contents of chrome://gpu?

Flags: needinfo?(dragos.slash)

From the profile, it looks like the slow frames occur when we have a large texture upload occurring over a single frame (~2-3 MB). Once we find out the page that the profile is from, we should investigate what's causing those texture upload spikes - they might be unavoidable, but it might be something like we're invalidating things from the texture cache too often and having to do a large re-upload in one frame.

Attached file chrome___gpu_.txt (deleted) —
Flags: needinfo?(dragos.slash)

The page in question is https://wallhaven.cc/toplist
Do note, the page in question has "infinite loading" up to page 12 or so, therefore first scroll down to page 12 first.

However this behaviour can be reproduced on any page, for instance https://www.google.com/search?q=firefox and have the setting for number of results per page set to 100.
https://share.firefox.dev/32DfDI9

Do you see the same behavior in the latest Firefox Nightly?

Flags: needinfo?(dragos.slash)

Yes, I can reproduce the issue on the Nightly build from 2022-03-31 as well:
https://share.firefox.dev/3tXrdIV
The page in question is https://www.google.com/search?q=firefox with 100 results per page.

Flags: needinfo?(dragos.slash)
Component: Graphics → Graphics: WebRender

Reporter, some scheduling tweaks for high refresh rate displays landed recently. Do you still see this problem in an up-to-date Nightly build?

Flags: needinfo?(dragos.slash)

Yes, I can still reproduce it in 105.0a1 2022-07-27. If anything now it seems to happen with a higher frequency (occurance number) than before. Before the hitching would occur once or twice per second, now it's 5 or 6 times per second.

Flags: needinfo?(dragos.slash)

(In reply to dragos.slash from comment #8)

Yes, I can still reproduce it in 105.0a1 2022-07-27. If anything now it seems to happen with a higher frequency (occurance number) than before. Before the hitching would occur once or twice per second, now it's 5 or 6 times per second.

Please attach a performance profile with the "Graphics" preset, thanks!

https://share.firefox.dev/3bgdNkF
Nightly 105.0a1 2022-07-27 using autoscroll on https://www.google.com/search?q=firefox with 100 results per page.

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

Attachment

General

Creator:
Created:
Updated:
Size: