More GNOME Shell / Mutter Performance Optimizations & Latency Reductions Still Coming

Written by Michael Larabel in GNOME on 25 February 2019 at 07:11 AM EST. 30 Comments
GNOME
Over the course of the GNOME 3.32 that is nearly complete as well as GNOME 3.30 there was a lot of measurable performance fixes and enhancements to improve the fluidity of the GNOME desktop as well as addressing various latency issues. While in some areas these performance improvements make a night and day difference, work isn't done on enhancing GNOME's performance.

One of the developers leading the charge on enhancing/fixing the performance of GNOME Shell and Mutter in particular has been Canonical's Daniel Van Vugt. While he's already made great strides in fixing issues himself, reviewing and collaborating on other patches, etc, the job isn't done. Van Vugt shared there's still some big ticket work pending.

There has been a NVIDIA proprietary driver issue he's been working to resolve as it causes Xorg to use 100% CPU usage and significant lag during "simple" work like glxgears. NVIDIA thought it might be fixed by the recent 418.30 driver release, but it turns out this issue is still affecting some users. Even if you aren't a NVIDIA Linux user, getting this fixed is important as it's currently blocking a significant input lag fix. That fix is to Clutter for being able to deliver events sooner when possible, yield one frame lower latency, and allow clients higher resolution input if desired.

Another notable fix is to clutter-stage-cogl for reducing output latency and reducing the missed frames count, which is one of the optimizations Daniel is most looking forward to seeing landed. There is also changes to the native renderer to accept frames without ever blocking, consolidating of frame throttling code, geometric GPU-less picking to eliminate the most significant CPU bottlenecks with cursor movement, and other changes.

Specifically on the Ubuntu front, Daniel has released a fix for Ubuntu 19.04 Disco and Ubuntu 18.04 Bionic to deal with 144/120Hz displays where GNOME's Mutter caps the rendering to 60 FPS. The fix for Ubuntu 18.10 is still being in the process of SRU'ed.

We'll see what of these fixes if any still make it in time for the GNOME 3.32.0 release in March otherwise will have to wait until GNOME 3.32.1 or if too invasive be held off until GNOME 3.34 this autumn. GNOME 3.32 is expected to be released on 13 March.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week