Open Bug 2027413 Opened 4 months ago Updated 2 days ago

Freeze when hardware acceleration is on

Categories

(Core :: Graphics: WebRender, defect, P1)

Firefox 149
defect

Tracking

()

UNCONFIRMED

People

(Reporter: lhrbozz, Unassigned, NeedInfo)

Details

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

Steps to reproduce:

Hardware acceleration enabled. (Disabled works fine)
Graphics - NVIDIA GeForce RTX 4070 (v. 595.97)

Actual results:

Firefox freezes, until minimizing/resizing the window

Expected results:

Let me scroll down the page without freezing

The Bugbug bot thinks this bug should belong to the 'Core::Graphics' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Graphics
Product: Firefox → Core

Could you help us out by trying to capture a Firefox performance profile when this happens? Visit https://profiler.firefox.com/ for more information and to enable the profiling toolbar button. When capturing a profile, please follow these steps -

  1. Navigate to about:logging
  2. In the logging preset drop down, select 'Graphics' and then click 'Set Log Modules'
  3. Click 'Start Logging' and conduct your testing. Keep this part short. Capture the issue well.
  4. Upload the resulting performance profile and post the url provided to this bug.

Thanks!

Flags: needinfo?(lhrbozz)

Sotaro: Might be layer compositor involved, like Bug 2027221 and Bug 2026937.

Severity: -- → S3
Component: Graphics → Graphics: WebRender
Flags: needinfo?(sotaro.ikeda.g)
Priority: -- → P1

Here's the link to the performance profile

  • I enabled the firefox profiler button
  • Went to about logging, made the changes and clicked start logging
  • The profiler button turned blue
  • I navigated to the website, scrolled for a few seconds and it froze.
  • Stopped profiling from the button after resizing the window to unfreeze.

Not sure if it's helpful but I noticed this issue only happens on my 144Hz monitor, in my 2 screen setup. If the window is on the secondary 60Hz, no freezes.

Thanks for looking into this!

Flags: needinfo?(lhrbozz)

Oliver, does the problem still happen with latest Firefox?

Flags: needinfo?(lhrbozz)

This still happens with Firefox 151.0.3 (64-bit), both on Windows and Linux when hardware acceleration is enabled.
I can reproduce it fairly reliably by scrolling Youtube Shorts, sometimes it takes just 2 videos, sometimes over 15, but it freezes eventually.
And it doesn't just freeze the single tab, but the entire Firefox window.

There were also certain cases where I have found the freeze hard to reproduce, such as running the Firefox in the troubleshoot mode.
When I created fresh new profile, it was also harder to reproduce, but was much more frequent when I enabled the side bar (with history tab, but not sure that's relevant). Running profiler with Debug settings might also have helped, but running it with Firefox settings seemed to do the opposite.

Here's the profile:
https://share.firefox.dev/4eqpCCu

And here's the recording to match the profile timeline (the 2.0s + 2.3s "Composite #2" calls seem to pretty much match the freeze time):
https://youtu.be/twU3CFehnJw

Update: Maybe it was only on Windows. I can't reproduce it on my Linux machine and I thought it doesn't happen there anymore because I disabled HW acceleration, but it seems it was enabled and I still can't reproduce it there.

Few more observations:

Not sure if it's helpful but I noticed this issue only happens on my 144Hz monitor, in my 2 screen setup. If the window is on the secondary 60Hz, no freezes.

As Oliver mentioned, I could also observe this behavior. Didn't get freezes at 60Hz or 75Hz, but got them with 100Hz and 144Hz (didn't really test 120Hz).

Also, it seems to be related to gfx.webrender.compositor, because when I disable it (and restart), the freezes are gone.

And lastly, doesn't happen when Firefox runs on integrated Intel GPU, so it could also be specific to NVidia GPUs (I'm using RTX 3080 Ti on recent drivers - version 610.74 - May 26, 2026).

Otherwise when I've added few more logs, I could observe WaitForFrameGPUQuery being stuck in ID3D11DeviceContext::GetData() for as long as the windows isn't refocused (https://share.firefox.dev/4uVpml3 - which seems curiously different from the profiler traces posted in my previous comment where it was split into 2 second blocks).

The exact symptoms of the reporter -freezing of the entire UI until switching away and back- are being reported by an increasing number of Zen users. Almost all of these users are on an Nvidia GPU.

While troubleshooting several have now indicated that setting gfx.webrender.compositor false solves the issue.

Browsing bugzilla and reddit you will find several posts about the 'Freezing' problem which most often occurs while scrolling media/video heavy sites.

I feel like this should be moved to S2?

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