Stuttering is an often reported user problem. It won't be noticeable in a professional game with complex levels that consume lots of CPU cycles, but mostly in test games with almost empty levels and no content.

The two reasons are background tasks, like disk accesses, and coarse scheduler resolution that leads to inaccurate task start times on particular PCs. The latter depends on the memory and the number of tasks running.

You can check the first reason yourself: use diag_frame to check both time_frame and time_step. Then compare the list of values in the acklog.txt. Look for sudden high values in this list. They are due to something happening on that PC. This can't be fully compensated by your script because time_step contains the time for the _last_ frame, not for the current frame. So when a disk access occurs, you have one frame freezing and the following frame a huge motion step due to a high time_step value.

Stuttering problems are why many professional games limit the frame rate not with giving task time back to the Windows task scheduler - as fps_max does - but by really burning CPU cycles in some or the other way.

Hope this helps.