GNOME Bugzilla – Bug 787165
All libmutter compositors exhibit laggy rendering on the RX 480 with Mesa.
Last modified: 2021-07-05 13:47:35 UTC
Created attachment 358967 [details] specs and glxinfo GNOME Shell, Pantheon, Budgie, and even Deepin have exhibited the following issue on multiple distributions. Especially during fullscreen animations, mutter renders in a laggy or stuttery fashion. The animation is the same playback speed, but it appears to be rendering at less than 30 FPS. However, when animating a single window like while minimizing, the animation tends to remain smooth. Swapping out AMD's RX 480 for NVIDIA's GTX 750 Ti in the same computer yields butter-smooth animation. Considering how much more powerful the RX 480 is, along with the fact that every other compositor I've tried animates extremely smoothly during all animations with the RX 480, I can only surmise the issue has something to do with libmutter. I also have a laptop with an Intel HD 4000 GPU which renders GNOME smoothly on Mesa, so I'm highly doubtful this has anything to do with the hardware itself. I'm currently using GNOME 3.24 on Arch Linux, but I've experienced the same issue on current versions of Ubuntu GNOME and Solus GNOME, as well as other libmutter-using compositors as seen in Solus, elementary, and Deepin. My specs and relevant glxinfo output are attached.
Updated report to reflect that this bug still affects 3.26.
Created attachment 362383 [details] gnome-shell-perf-tool output for RX 480 I've run gnome-shell-perf-tool with the aforementioned hardware and Mesa configuration (using defaults, of course). Hopefully that can prove useful in tracking down the issue.
I'm not sure what the policy on uploading videos here is, but here's a MediaFire link to demonstrate the issues. http://www.mediafire.com/file/8cjcwj7zccxw3cc/Realtime+RX+480+Performance+Xorg.mkv The OBS recording was highly accurate, so this is as close to showing exactly what I'm seeing as I can produce. Meanwhile, Compiz and Kwin render butter smooth and consistent without a hitch during any comparable scaling operations. I've intentionally left the windows and rendering workload to a minimum in this video to better demonstrate the difference between the shelf scaling animation and the regular scaling operations. With more windows or something like a video playing or some 3D rendering, the basic scaling operation drops more frames. Still, the minimize animation remains smooth no matter what. Again, even with lots of heavy rendering and things going on, nothing like this occurs in any of the non-libmutter compositors I've tried. I'm not sure what more I can leave to demonstrate this issue at the moment, so I'll try not to clutter these comments any further for now.
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a new ticket at https://gitlab.gnome.org/GNOME/mutter/-/issues/ Thank you for your understanding and your help.