Closed Bug 1627717 Opened 3 years ago Closed 1 year ago

Dual screen different refresh rates resulting in choppy performance

Categories

(Core :: Graphics, defect, P3)

74 Branch
Desktop
Linux
defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: gorphus, Unassigned)

References

(Blocks 1 open bug)

Details

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:74.0) Gecko/20100101 Firefox/74.0

Steps to reproduce:

I'm running openSUSE at the moment, but I also had this problem on Manjaro and it looks like it's also there on Windows 10.

I have a dual screen setup where screen 1 is a 1440p 144hz screen and 'screen' 2 is a 1080p 60hz dummy 'screen' that is only used for audio (by running the cable to a receiver).

I tried:
gfx.webrender.all true
gfx.webrender.enabled true
layout.frame_rate 144 (crashes FF immediatly)
widget.wayland_vsync.enabled true

Actual results:

Firefox scrolls really choppy and doesn't feel smooth at all, until I disconnect the 60hz screen, resulting in buttery smooth 144fps scrolling.

Expected results:

The OS itself runs at the high refreshrate/framerate but inside Firefox the performance is only 60fps.

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: Untriaged → Graphics
Product: Firefox → Core

Does this issue happen if you disable WebRender?

Flags: needinfo?(baserunner)

Yes with both webrender on and off.

In Windows 10 everything looks normal by the way, the target framerate in Windows says 144, while it says 60 in Linux.

Flags: needinfo?(baserunner)

I've just opened a similar issue because I don't have this dual screen setup, but it might still be related. Because you tested a wayland-specific config, I assume you're on Wayland. FF on Wayland ignores the display refresh rate and always targets 60. Would you check

  1. if this also happens for you if you turn off the second screen, and
  2. if this issue is gone when you log into an X session

(In reply to grmat from comment #4)

I've just opened a similar issue because I don't have this dual screen setup, but it might still be related. Because you tested a wayland-specific config, I assume you're on Wayland. FF on Wayland ignores the display refresh rate and always targets 60. Would you check

  1. if this also happens for you if you turn off the second screen, and
  2. if this issue is gone when you log into an X session

If the second screen is disconnected, the behaviour is normal. Happens on X and on Wayland.

The layout.frame_rate crash may be related to bug 1614212 which was fixed in 76 (beta right now). Does nightly work?

OS: Unspecified → Linux
Hardware: Unspecified → Desktop
Priority: -- → P3

Are you using Gnome Shell? If that's the case it's unfortunately expected behaviour on Wayland until https://gitlab.gnome.org/GNOME/mutter/-/issues/903 is fixed (GS only refreshes at the rate of the slowest display - target for the fix is 3.38). If the same happens on X11, then that's probably another issue around vsync in FF.

Btw. concerning the expected results: with widget.wayland_vsync.enabled:true you should get 144Hz if the compositor does things right.

Wayland:
Running latest Firefox Nightly (77.0a1), I have good results with <code>widget.wayland_vsync.enabled:true</code> and <code>gfx.webrender.enabled</code>. The problem has been solved this way, running dual screen 144hz and 60hz I got 144hz in Firefox.

I'll update this post with X.org findings.

X11:
Running latest Firefox Nightly (77.0a1), layout.frame-rate 144 works. Although the about:support page says 144, it feels like 60, so in X11 it doesn't work unfortunately.

I'm switching over to wayland for the time being and report back if I find something else that might be of interest.

Because this bug's Severity has not been changed from the default since it was filed, and it's Priority is P3 (Backlog,) indicating it has been triaged, the bug's Severity is being updated to S3 (normal.)

Severity: normal → S3

This should be fixed in nightly / FF 86 after bug 1645528 landed (also making layout.frame_rate unnecessary). Baserunner, can you confirm?

P.S.: given a compositor that properly handles multi-monitor with different refresh rates - in case of Gnome that's >= 3.38

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