Closed Bug 792639 Opened 12 years ago Closed 1 year ago

Unusual 3d GPU clock while scrolling or switching between windows

Categories

(Core :: Graphics, defect)

x86_64
Windows 7
defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: bugzilla, Unassigned)

References

Details

(Keywords: perf, reproducible)

By request of Robert O'Callahan (comment 6 of bug 647945), I'm opening a separate bug report regarding this GPU power usage issue.

My specs:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1
Win 7 Ultimate x64
ATI Radeon HD 5850 graphics card
Catalyst 11.12 drivers, but I can reproduce it also with Catalyst 12.4 and Catalyst 12.8.

I can reproduce it in two ways (see below).

Method 1 (always reproducible):
1. Start Firefox 15.0.1 (with HW accel.)
2. Start GPU-z
3. Navigate to any long page in Firefox (i.e. http://news.google.it/nwshp?hl=it&tab=wn), scroll up/down until you finish the page.
4. Observe GPU clocks in GPU-z.
5. GPU clocks up to its maximum speed

Method 2 (I don't know if it's related to the scrolling issue) :
1. Start Firefox 15.0.1 (with HW accel.)
2. Start GPU-z
3. Focus on a page in Firefox without scrolling (i.e. http://news.google.it/nwshp?hl=it&tab=wn), and almost immediately click on the GPU-z window reduced in taskbar to observe GPU clocks. You have to do this continually to notice the clock increase.
4. Observe GPU clocks in GPU-z
5. GPU clocks up.

Let me know if you need more information.
Summary: Fix followup issue from bug 647945 [GPU usage fluctuations while scrolling/navigating] → Followup issue from bug 647945 [GPU usage fluctuations while scrolling/navigating]
Severity: normal → minor
Keywords: perf, reproducible
Summary: Followup issue from bug 647945 [GPU usage fluctuations while scrolling/navigating] → Unusual 3d GPU clock while scrolling/navigating
Version: 15 Branch → unspecified
Summary: Unusual 3d GPU clock while scrolling/navigating → Unusual 3d GPU clock while scrolling or switching between windows
Keywords: urwanted
User research input needed.
Depends on: 647945
Keywords: urwanted
Unfortunately I can reproduce it even on Firefox 19 Nightly version.

All sites reporting this issue:

1) http://forums.guru3d.com/showthread.php?t=367905 (most recent)
2) http://forums.mozillazine.org/viewtopic.php?f=23&t=2119709
3) http://support.mozilla.org/en-US/questions/803525
4) http://forum.beyond3d.com/showthread.php?t=59830
5) http://www.xtremesystems.org/forums/showthread.php?268574-Firefox-4-and-GPU-utilization
6) http://www.rage3d.com/board/showthread.php?t=33971978
7) http://hardforum.com/showthread.php?p=1037909583#post1037909583
8) http://forums.overclockers.co.uk/showthread.php?t=18276242
9) http://forums.overclockers.co.uk/showthread.php?t=18332818
10) http://forums.mozillazine.org/viewtopic.php?f=23&t=2119709
11) http://uk.download.nvidia.com/Windows/285.27/285.27-Win7-WinVista-Desktop-Release-Notes.pdf

You can read this in page 8 (between resolved Single-GPU Issues):
GeForce*500*series:*GPU*power*levels*appear*to*flu ctuate*unnecessarily*while*
navigating*the*Firefox*browser.*[857542]


I think that this is a curious situation. A scrolling operation can't be treated like 
a videogame. 
And it seems that Nvidia provided a patch regarding this specific firefox issue.

So that's a firefox issue to correct, definitively.
Additional note: 
Of course the ideal requirement for a testing is an ATI card.
We use the GPU to composite when scrolling (and for any other kind of heavy drawing, but I guess scrolling is the most common heavy drawing operation). Even though what we're doing is pretty straightforward (should be comparable to what Aero does, for example), I guess it triggers drivers to go into a high-power-consumption mode. Sounds like Nvidia fixed that in their September 2011 driver update.

I don't think we have an alternative here. Trying to figure out why ATI drivers enter a high-power mode, and coming up with another way to do what we do that doesn't use trigger it, seems unproductive. Only driver developers can really know what triggers that mode, and they are also best placed to do something about it.

People can turn off GPU compositing in Options / Advanced / General if they want to minimize GPU usage.
Turning off GPU compositing in Options / Advanced / General isn't sufficient to minimize GPU usage for me.

To minimize GPU usage I have to disable also Aero, and I don't want to disable Aero to obtain it.

So, I think that Firefox should stop GPU utilization during scrolling if I disable just GPU compositing. I'm not a developer like you, and I wonder if it would be possible to implement this concept in firefox without breaking nothing in your development.

Let me know, and thanks!
(In reply to minus54 from comment #5)
> Turning off GPU compositing in Options / Advanced / General isn't sufficient
> to minimize GPU usage for me.
> 
> To minimize GPU usage I have to disable also Aero, and I don't want to
> disable Aero to obtain it.
> 
> So, I think that Firefox should stop GPU utilization during scrolling if I
> disable just GPU compositing. I'm not a developer like you, and I wonder if
> it would be possible to implement this concept in firefox without breaking
> nothing in your development.
> 
> Let me know, and thanks!

Make sure to restart after that switch is set (Tools->Options->Advanced->Hardware Acceleration). If -after- that the problem is still there when using Aero. The problem isn't really in firefox, it's probably a side-affect of GDI acceleration in Aero or something, but it'll be a lot harder to say anything sensible about it.
The problem is still there when using Aero.
I do not know what else to try, except contacting again AMD about the issue.
Turning off gpu acceleration is not a solution...you lose most of the goods of firefox anyway :( 
If it's not firefox fault, mozilla guys should press ati to fix the driver problem. Or cooperate both teams to solve the issue.
Installed latest 12.11 beta drivers, this is how it looks graphic card usage after a google search session (no flash, only scrolling google search page up and down): http://gpuz.techpowerup.com/12/10/26/e7a.png
This is the official reply posted by an AMD hardware rep:

"The clocks you are seeing in Firefox are the expected behavior. It's a fully GPU-accelerated browser, and using it can request hundreds or thousands of draw calls per second. Other browsers do this, too. But Firefox is triggering a higher power state on Radeon because whatever it's doing is being done less efficiently than other browsers.

This is not a driver bug, and we've already spoken to Mozilla about it."

Source: 
http://www.overclock.net/t/1318756/amd-12-11-beta-drivers/530#post_18563938

The ball is in your court now.
(In reply to minus54 from comment #9)
> This is the official reply posted by an AMD hardware rep:
> 
> "The clocks you are seeing in Firefox are the expected behavior. It's a
> fully GPU-accelerated browser, and using it can request hundreds or
> thousands of draw calls per second. Other browsers do this, too. But Firefox
> is triggering a higher power state on Radeon because whatever it's doing is
> being done less efficiently than other browsers.
> 
> This is not a driver bug, and we've already spoken to Mozilla about it."
> 
> Source: 
> http://www.overclock.net/t/1318756/amd-12-11-beta-drivers/530#post_18563938
> 
> The ball is in your court now.

The rep is wrong, in your case at least. You explicitly stated you switched off hardware acceleration. When you have switched off hardware acceleration there will be no GPU drawing calls, so this cannot be responsible in this case.

See also comment 6.
Severity: minor → S4

Unable to reproduce in current versions.

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