4 ms·
The linked vsync-tester[1] is very cool. But it's sad to see that (at least on my system) nothing has changed since 2012[2] - Firefox still misses frames; Chrom
by phoboslab 5y ago
The linked vsync-tester[1] is very cool. But it's sad to see that (at least on my system) nothing has changed since 2012[2] - Firefox still misses frames; Chrome consistently lags an extra frame.
[1] https://www.vsynctester.com/ https://www.vsynctester.com/
[2] https://phoboslab.org/log/2012/06/measuring-input-lag-in-browsers https://phoboslab.org/log/2012/06/measuring-input-lag-in-bro...
- frankenst1 5y agoYes, it seems like smooth scrolling is prioritized over low latency. On Windows I even get 3 frames (48ms) of lag (presumably because of DWM).
- jd3 5y agoI use a wired mouse with a 1000hz polling rate on an M1 Macbook Pro with vsync disabled system wide (through Additional Tools for Xcode 13.dmg[0] => Quartz Debug.app => Enable Vertical Sync; it only actually disables vsync if you use an external monitor and close the lid of the MacBook). Like switching to the Classic Theme from Aero in Windows 7[1], as far as I can tell, this removes at minimum 1-2 frames of input lag (typing, mouse movement, etc.) throughout all of macOS. In Firefox's about:config, after setting user_pref("accessibility.force_disabled", 1) user_pref("general.smoothScroll", false) user_pref("general.autoScroll", true) , I'm shocked by just how slow and laggy Chrome's builtin smooth scrolling implementation feels by comparison. In fact, it's so bad that I now open Chrome and all Electron apps with open -a Google\ Chrome --args --disable-smooth-scrolling --disable-gpu-vsync --disable-frame-rate-limit open -a Slack --args --disable-smooth-scrolling open -a Spotify --args --disable-smooth-scrolling You used to be able to disable Chrome's smooth scrolling with chrome://flags/#disable-smooth-scrolling, but that flag was removed for whatever reason. I'm also surprised by how much faster Firefox's builtin middle mouse click autoscroll is compared to Chrome's ersatz AutoScroll[2] extension. [0]: https://download.developer.apple.com/Developer_Tools/Additional_Tools_for_Xcode_13/Additional_Tools_for_Xcode_13.dmg https://download.developer.apple.com/Developer_Tools/Additio... [1]: https://pavelfatin.com/typometer/ https://pavelfatin.com/typometer/ [2]: https://chrome.google.com/webstore/detail/autoscroll/occjjkgifpmdgodlplnacmkejpdionan?hl=en https://chrome.google.com/webstore/detail/autoscroll/occjjkg...
- frankenst1 5y ago> I use a wired mouse with a 1000hz polling rate on an M1 Macbook Pro with vsync disabled system wide; it only actually disables vsync if you use an external monitor and close the lid of the MacBook Are you using a >120Hz Monitor or don't you care about the occasional tearing?
- jd3 5y agoI, unfortunately, still use a cheap 60hz acer monitor from my workplace. I don't mind the occasional tearing — I usually only notice it when using autoscroll in Firefox at a lower speed/velocity. As a remote SWE, I sit in front of my computer all day every day, so I find that the benefit in speed I get from removing at least one frame of input lag outweighs the occasional tearing which occurs as a result. I'm not exactly sure why, but I haven't noticed any tearing when playing video content. I also spend a lot of time in XQuartz, which has some longstanding rendering bugs unless you disable vsync. https://www.youtube.com/watch?v=IaPh4tc0_B0 https://www.youtube.com/watch?v=IaPh4tc0_B0
- jd3 5y agotoo late to edit; here's the proper formatting for code blocks above user_pref("accessibility.force_disabled", 1) user_pref("general.smoothScroll", false) user_pref("general.autoScroll", true) --- # --disable-frame-rate-limit is buggy on macOS open -a Google\ Chrome --args --disable-gpu-vsync --disable-smooth-scrolling open -a Slack --args --disable-frame-rate-limit --disable-gpu-vsync --disable-smooth-scrolling open -a Spotify --args --disable-frame-rate-limit --disable-gpu-vsync --disable-smooth-scrolling