GNOME 3.32 Mutter Should Perform A Lot Better For DisplayLink/USB-Display Type Setups
The change to Mutter's renderer code uses Cogl for the CPU copy path rather than the OpenGL glreadPixels() function. Plus it adds some pixel format conversion tables between DRM and Cogl formats.
The technical details are outlined in the patch by Pekka Paalanen. That patch is queued in the 3.31 development series ahead of the March debut of GNOME 3.32.
What's exciting though is the performance benefit particularly on slower/older systems with these multi-GPU/DisplayLink setups: "On HP ProBook 4520s laptop (Mesa DRI Intel(R) Ironlake Mobile, Mesa 18.0.5), without this patch copy_shared_framebuffer_cpu () for a DisplayLink output takes 5 seconds with a 1080p frame. Obviously that makes Mutter and gnome-shell completely unusable. With this patch, that function takes 13-18 ms which makes it usable if not fluent."