Help us shape the future of the Vortex mod manager by taking our survey

This patch may have positive impact on FPS and loading speed, but will it be noticable or not completely dependent on your hardware and game setup. I'll try to explain it in short and complete ways.

Short explanation

If you have a slow CPU, and/or uncapped FPS (Higher than 60), and/or lightweight graphic preset, highly likely, you will have noticable performance impact by this patch, but this is not guaranteed. The best way to find out will you have the boost or not is to try it.

How large the impact will (or will not) be, is completely dependent on your hardware and graphic preset. If your CPU is the bottleneck in giving you FPS then the boost will be very noticable. If you have a heavy graphic preset and/or your CPU always waits for GPU, then you may not see any difference.

On the boost impact also affects how many installed animations you have and how many NPC around. If you have no additional animations the boost will be lesser, but still will be (if you have it at all).

Complete explanation

To understand what impact the patch may have at first we should understand what FPS means. FPS (Frames-Per-Second) - is the amount of frames that your PC can render every second. If you play with 60 fps it means your PC takes 1000/60 = 16.7 milliseconds to process one frame.

2 main processing units contribute toward generating your FPS: CPU and GPU. GPU here takes mainly only graphical render part, while CPU takes everything else, including AI, scripts, engine process handling, memory handling and so on. While frame processing CPU and GPU works parallel, a frame will be considered as finished after the slowest processor unit will finish its task. In other words, if you play with a 10 years old processor together with RTX 2080 Ti, highly likely, the GPU will always wait until CPU finish its work. And vise versa, if you have an extremely hard graphic preset together with a good CPU, probably, CPU will always wait until GPU finish rendering.

This patch can only improve CPU performance, but not GPU. If your slowest processor unit in frame processing is CPU then you'll see the FPS boost, otherwise, complex graphical render will suppress the difference: CPU was faster and will remain fastest, bottleneck in that case is GPU.

You should also not expect any difference if you always play on the capped frame rate (always 60 fps for example), I think it's obvious. The limiter forces the render thread to wait several milliseconds every frame to maintain a fixed frequency what also suppress the difference created by the patch.

The patch makes a change to skip a part of code which has extensive execution in the render thread. The part of code found useless and the skip has no discovered negative impact on the game process. It means we can safely skip it and free CPU from several thousands of iterations. 

How large the performance boost can be mainly dependent on several things:
- Your hardware
- How many installed animations you have
- How many NPC around

Additional animations increase the animation unit counter. The counter does not directly reflect the amount of used animations, however, the progression here is simple: the more installed animations, the bigger the counter. Fore did a lot of work in calculation of the value in the latest FNIS release.

The real limit of the counter is 32767 (signed short max), however, even if we don't have any installed animations, by default the value is 6603. In other words, with no CTD we can install animations that can grow up to 32767 - 6603 = 26164 anim units (current FNIS max). Later, in the render thread the value will be iterated every frame/few frames for every NPC around. For example, if we stand in a city with 30 NPC around and have no installed animations the code will make 30 * 6603 = 198 090 iterations, what may increase up to several milliseconds the frame processing time by CPU, and up to 5x more if we installed additional animations.

The patch completely ignores the value and skips the iterations what prevents the CTD on game load and frees CPU from redundant work while frame processing.

Article information

Added on

Edited on

Written by