Open Bug 1734692 Opened 4 years ago Updated 2 months ago

Improve our ability to measure scroll smoothness

Categories

(Core :: Graphics, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: jrmuizel, Unassigned)

References

(Blocks 1 open bug)

Details

We should have a good way to know if scrolling is ever not as smooth as it should be and when this happens we should get markers in the profile.

See Also: → 1641070

It would be interesting to have the ability to get graphs of scroll position and the difference in scroll position over time.

In bug 1704659 botond made one off graphs of such to debug/visualize another problem.

In bug 1692707 hiro added scroll offset logging to the apz test logging enabled via the pref, it logs the scrollid, the layersid, the scrolloffset and the time since process creation. Shouldn't be too hard to hook up the profiler to get this data to make graphs with.

Severity: -- → N/A
Priority: -- → P3

Intel recently updated their PresentMon tool (it's open source, on github) with a new measurement they call Simulation Time Error, they say it properly detects stutter directly for the first time. Maybe Firefox can integrate this Simulation Time Error into their testing? It might be Windows only but I'm not sure. Here's an excellent video about it https://www.youtube.com/watch?v=C_RO8bJop8o

Also, this is worth reading https://issues.chromium.org/issues/40507303

That same Youtube channel just posted an excellent and very technical deep dive video about this issue (how to truly measure jank/stutter), it really is worth watching the whole thing, I think it could be helpful for measuring jank/stutter more accurately in Firefox. PresentMon is open source and getting a test up and running for x86 Windows builds of Firefox should be pretty straight forward (I'm not sure about other platforms though) https://www.youtube.com/watch?v=qDnXe6N8h_c

Also maybe this bug should be linked here too https://bugzilla.mozilla.org/show_bug.cgi?id=1487864

Sorry I forgot to also share these, the Chromium team shared a couple of great docs about measuring jank/stutter, there could be some useful stuff here https://docs.google.com/document/d/1Y0u0Tq5eUZff75nYUzQVw6JxmbZAW9m64pJidmnGWsY/edit?tab=t.0

https://docs.google.com/document/d/1AaBvTIf8i-c-WTKkjaL4vyhQMkSdynxo3XEiwpofdeA/edit?tab=t.0

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