Overview opening and closing transitions drop frames
Opening and closing overview drops frames during the transition.
I managed to disable JIT in GJS, which allowed me to collect cleaner perf traces. This is on F33, Wayland, jhbuilt mutter@70cfccd9 and shell 7a2e629b. My CPU is i7-3770k running at 4.20 GHz, my GPU is AMD RX 580 and I have two screens, 2560×1440@144 and 1920×1080@144.
Note that while some not very heavy background task is running (like profiling) the animation is smoother, although still not 144 FPS. That is to say, the graphs below actually show a better situation than I'm normally experiencing.
This is a trace of repeatedly hitting Super to open and close the overview with a few windows open on a few workspaces. The perf command-line was
perf record --call-graph dwarf,65528 -F 1000 -p <gnome-shell PID>.
A few things to note here. The leftmost
clutter_source_dispatch seems to run only when Super is pressed, so it does a lot of work once every time Overview starts opening (and not e.g. every frame). Here's the zoomed-in version:
frame_clock_dispatch (runs every frame of the transition animation) consists of: