During content performance testing, we found that Firefox cannot maintain uniform 60fps scrolling on even relatively simple pages when the test laptop is in a "Power Saver" power profile. Other browser were able to scroll better on some of the test pages. Our measurements: https://docs.google.com/spreadsheets/d/13SgzLq6IWj38LvhPnU7YE07F0XsZaYSNyPBBMZch5_M/edit#gid=0 Details: * In the tests above, the scrolled page was alternately Yahoo search results, a Twitter user page and a Facebook profile * The test laptop was the reference content-perf laptop: HP Pavillion 14t i3-5010u in the “Power saver” power profile (laptop was plugged in) Firefox’s scrolling performance relative to other browsers varies depending on test site, but Firefox’s own scrolling smoothness is perceptibly worse and less consistent in “Power saver” mode vs the stock “HP Recommended” mode. This reference laptop configuration could provide a target for scrolling performance optimizations. Alternately, Firefox could lower its refresh rate when on batter power to improve animation consistency.
Please make sure you're testing with APZ. I think in those configurations we can't do 60 FPS using main thread transaction but if we tune APZ properly we can run the compositor at 60 FPS and hopefully run the main thread fast enough to keep checker-boarding to a minimum. Bug 1204136 may help give us a bit more performance.
I did some test on this machine, performance seems decent with APZ. I'm going to follow-up with Vladan first and I'll post the results.
A bit of context: this discrepancy was originally found at the beginning of June when APZ was disabled by default and much less reliable, so we were measuring with APZ disabled. I think APZ became default on Windows desktop at the end of July (bug 1157745) With that said, this hardware & this power saver configuration are still valuable for testing gfx scrolling optimization
Whiteboard: [content perf] → [content perf][gfx-noted]
2 years ago
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.