Closed Bug 437178 Opened 16 years ago Closed 11 years ago

Slow scrolling with background:fixed with NVidia with hardware acceleration

Categories

(Core :: Graphics, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: teoli, Unassigned)

References

()

Details

(Keywords: regression)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko/2008051206 Firefox/3.0
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9) Gecko/2008051206 Firefox/3.0 (RC2)

Scrolling should be slightly slower in Fx 3 than with Fx 2.

However this describes a degenerate case where scrolling is much slower (around 100% longer!) with hardware acceleration on an NVidia card than without hardware acceleration.

Reproducible: Always

Steps to Reproduce:
1. Start a Firefox with a fresh profile on a computer with the required configuration
2. Open the URL http://ajaxian.com/
3. Scroll down using the down arrow
Actual Results:  
Scrolling is much longer than the same scrolling without hardware acceleration

Expected Results:  
Scrolling at least as quick than without hardware acceleration

XP SP2 Fr
nvidia GeForce 5600 / 256Mo (driver 6.14.11.6921 of the 05/12/2007)
Athlon 64 3200+ with RAM 1Go 
Smooth scrolling *off*

Summary of the results (Opera and Intel chipset for comparison purpose):
                                      -------------------------------------------------------------------------
                                      ||    nvidia GeForce 5600 / 256Mo AGP    ||    chipset Intel 82865G    ||
---------------------------------------------------------------------------------------------------------------
|| Hardware acceleration   | Colours  || Fx 3.0 RC2 | Fx 2.0.0.14 | Opera 9.27 || Fx 3.0 RC2 |  Fx 2.0.0.14  ||
---------------------------------------------------------------------------------------------------------------
||          ON             |  32 bits ||   2' 43"   |    0' 30"   |   0' 51"   ||   1' 15"   |     1' 01"    ||
||                         |  16 bits ||   1' 24"   |    0' 30"   |   0' 40"   ||   0' 40"   |     0' 34"    ||
---------------------------------------------------------------------------------------------------------------
||          OFF            |  32 bits ||   1' 36"   |    1' 25"   |   2' 34"   ||   1' 28"   |     1' 09"    ||
||                         |  16 bits ||   0' 52"   |    0' 40"   |   1' 36"   ||   0' 48"   |     0' 37"    ||
---------------------------------------------------------------------------------------------------------------

We clearly see that it is a regression: nvidia with hardware acceleration was quicker than nvidia without hardware acceleration in Fx 2.0.0.14.
Sorry the table wasn't readable. So here is the first part:
                              
   Smooth scrolling OFF    |         nvidia GeForce 5600 / 256Mo AGP  
-------------------------------------------------------------------------------
|| Hardware acceleration   | Colours  || Fx 3.0 RC2 | Fx 2.0.0.14 | Opera 9.27 
-------------------------------------------------------------------------------
||          ON             |  32 bits ||   2' 43"   |    0' 30"   |   0' 51"   
||                         |  16 bits ||   1' 24"   |    0' 30"   |   0' 40"   
-------------------------------------------------------------------------------
||          OFF            |  32 bits ||   1' 36"   |    1' 25"   |   2' 34"   
||                         |  16 bits ||   0' 52"   |    0' 40"   |   1' 36"   
-------------------------------------------------------------------------------

And a comparison with another graphic card that doesn't show the problem:
                                      ----------------------------------------------------------------------
                                      ||    chipset Intel 82865G    ||
----------------------------------------------------------------------
|| Hardware acceleration   | Colours  || Fx 3.0 RC2 |  Fx 2.0.0.14  ||
----------------------------------------------------------------------
||          ON             |  32 bits ||   1' 15"   |     1' 01"    ||
||                         |  16 bits ||   0' 40"   |     0' 34"    ||
----------------------------------------------------------------------
||          OFF            |  32 bits ||   1' 28"   |     1' 09"    ||
||                         |  16 bits ||   0' 48"   |     0' 37"    ||
----------------------------------------------------------------------
Probably this bug will be closed as its related to closed-source driver :( .
It is difficult to install a open source driver with Windows :(

On http://ajaxian.com/ with the generic driver for Windows (Video Controller - compatible VGA; the computer is almost unusable)
Hardeware configuration given by teoli2003.

Colours 32 bits. Scroll down using the down arrow.

Hardware acceleration ON
Fx 2.0.0.14 : 1' 56" (0' 30" with nvidia driver)
Fx 3.0 RC 2 : 1' 26" (2' 43" with nvidia driver)

Hardware acceleration OFF
Fx 2.0.0.14 : 1' 10" (1' 25" with nvidia driver)
Fx 3.0 RC 2 : 1' 38" (0' 55 with nvidia driver)
background:fixed is generally a problem see bug #431993

(maybe a dupe?)
Isn't this Bug 372039 ?
I don't think so. This one is specific to the huge regression when hardware acceleration is on (look at the numbers when hardware acceleration is off). Bug 37239 is for the overall regression, which is much smaller.
Bug 441396 is still a problem with the newest NVidia drivers (177.80), where some performance improvements were included.

See also this NVidia forum discussion about performance: http://www.nvnews.net/vbulletin/showthread.php?t=115916
If this is a regression, can someone find a regression range (i.e. which build first started showing these symptoms).
Depends on: 372039
I think this has improved a lot with the last few NVidia driver versions. Currently with 180.29 my sample page ( http://www.tempus-vivit.net/taverne/thema/935 ) is still noticeable slower than other pages, but scrolling and tab switching has improved a lot.
Still, I think it could be better ;-)
so windbg is a package from microsoft (or was, these days it's mostly integrated with their SDK). windbg can be used to get stack traces showing what's going on. 

https://developer.mozilla.org/En/How_to_get_a_stacktrace_with_windbg 

I tend to use !analyze -v -hang

but you should really read about how to use windbg (google is your friend).

You might find that WpfPerf is more useful:

http://windowsclient.net/wpf/perf/wpf-perf-tool.aspx

however, I don't have any experience with it. Generally, feedback to NVidia should be done using:

http://www.nvidia.com/object/driverqualityassurance.html

We have very few people from NVidia using our bug tracker, and they have their own feedback mechanism...
Component: General → Graphics
QA Contact: general → thebes
I've tested this using a couple of different methods. Most notably using a free-scrolling mousewheel. And although I can see layers scrolling not being faster in the method described here in the bug. The frame rate is much much higher for me. i.e. the GDI method is just skipping frames like mad, this might cause it to be a bit faster, even though the scrolling experience is much worse.

This is on a GT230M
I don't see any differences when scrolling with HWA on/off, nightly 25.0a1 (2013-07-15), NVIDIA GeForce 8400 GS.
If anyone can reproduce this with latest nightly and NVIDIA drivers please reopen.
Status: UNCONFIRMED → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
Issue is Resolved - removing QA-Wanted Keywords - QA-Wanted query clean-up task
You need to log in before you can comment on or make changes to this bug.