What’s the cause of consistent stutter in Quake4 across PCs

pcquake-4

I've been playing Quake 4 since it's release day, and I've noticed there's either a v-syncing or caching issue where the framerate seems to jump for a split second every second or so, I've been calling it a heart-beat all these years.

I first noticed it on my ATI X800 Pro many years ago, assumed it was some weird gpu thing and didn't think much of it. Later I got a GTX 460, while it was much smoother, this weird ticking still occurred. Now I'm using one of the fastest GTX 580s ever made, and seemingly no matter what I do to the settings, I can smooth it out a little, but that micro-stutter is still there every second or so.

Did anyone ever figure out what this was? I've seen this on Intel Cpus, AMDs…Laptops…Desktops…Xeons…Opterons…With SMP, without SMP….I'm not sure what could be causing it outside of just plain bad code that never got addressed.

Best Answer

This is called microstutter and it is related to the interaction between the simulation ticrate and the renderer framerate, possibly with some vsync added in.

I do not recall the specific explanation, but it may be a result of cumulative errors (i.e. successive integer rounding and then a large step correction)

For Doom3-based games, the cvar for this is com_fixedtic.

As an aside, some people have noticed that games like Fallout 3, skyrim etc, higher framerates result in a faster simulation (and slower framerates reduce the simulation speed). This is the same issue that com_fixedtic is meant to address, and one of the settings will result in the doom3/Q4 simulation running faster/slower along with the framerate (the benchmarking tool being the extreme example).