Frame pacing
Frame pacing is how evenly frames are spaced in time. A game can average 100 frames a second and still stutter if a few frames take much longer.
Also called stutter, frame time, microstutter, hitching.
An FPS counter averages. A game running at 100 frames a second on average can still hide one frame that takes 30 milliseconds, and your eye notices that one frame as a hitch. Frame pacing is about the gaps between individual frames, and the average says little about them.
How do you find a stutter?
Record the time between every frame and look at the worst ones. At 60 frames a second each frame has 16.7 milliseconds, and a frame over about 25 is one you can feel. Time the big jobs inside each frame too, so a slow frame tells you what ran in it, and reproduce the stutter on a fixed route so you can compare before and after.
Frame pacing in Mytheria
A trace found creatures planning routes in groups every 40 ticks, each search taking about 20 milliseconds, enough for a steady rhythm of spikes. Making the search insert new places into its list in order, in place of re-sorting the whole list each step, halved it to under 10 milliseconds, and frames over 25 milliseconds on our test route went from ten to zero. A small version of that trace is a free Godot add-on: Frame Trace, MIT licensed.
The full post, with clips and demos Godot performance: how we found a stutter with a frame trace