Is this system latency reduction tweak worth using?

Greetings ya’ll!

I came across a video on youtube that claimed a reduction in overall system latency from a power settings tweak in Windows.

Under the high performance plan, the power setting named:

  • Processor performance time check interval (4d2b0152-7d5c-498b-88e2-34345392a2c5)

is set to the default value of:

 -15 ms (High Performance) 

and viewers were encouraged to max out this value to:

 -5000 ms (Tweak)

Is this snake oil? Or is it legit? My quick tests in latencymon revealed an improvement with ISR executions across all cores.

What’s everyone’s thoughts?

I try to run as close to a stock config as possible, the less “tweaks” involved, the better

I would not change anything like that unless you were having some weird problem

1 Like

I feel the, “if it ain’t broke” mentality but apparently this tweak has a big impact on how Windows deals with process scheduling and the amount of interrupts caused by a vanilla install.

It won’t make the PC explode. So just try it and see if you notice any difference. If not, rollback the change. If yes, lucky you.

1 Like

Usually, there’s a general tradeoff between latency vs bandwidth in an otherwise properly implemented system. So response time may be optimized for at the expense of how much data can be processed at a time or vice-versa, and so it’s an art to find what you consider optimal for a workload.

That said I can definitely see a poorly optimized setting existing from the perspective of a typical desktop user, either due to compatibility, incompetence, use case or ignorance reasons.

Generally what you’ll feel is latency improvements, but jitter, how consistent the performance is, is important as well. It’s possible to make a change that decreases average FPS in a game, but it feels better because now it no longer jumps around.

Definitely intriguing though, I’ll have to have a look. Unfortunately I don’t really have a recommend way to look for any potential detrimentals it may cause.

Could also effect power consumption.

Edit
Found this description in a “real time” tuning guide, basically seems like “it depends”.

https://github.com/amitxv/PC-Tuning/blob/main/docs/post-install.md

Processor performance time check interval - 5000

  • There are a handful of ntoskrnl power management DPCs that are scheduled at a periodic interval to re-evaluate P-States and parked cores. With a static CPU frequency and core parking disabled, these checks become obsolete thus unnecessary DPCs get scheduled. The Processor performance time check interval setting controls how often these checks are taken place so increasing the setting’s value can reduce CPU overhead as significantly fewer DPCs are scheduled. For reference and at the time of checking, the Power Saver, Balanced, High performance power schemes have a default value of 200, 15 and 15 respectively. 5000 is the maximum accepted value. Of course, if a dynamic CPU frequency is used (e.g. Precision Boost Overdrive, Turbo Boost) and parking is enabled, the effects of increasing this value should be evaluated as cores may not be able to boost their frequency in response to workloads as the OS is evaluating the current scenario less often
2 Likes

Thx for the detailed response! Lmk how it goes if you test it.

I’m sure there’s many contributing factors but lets be honest here-- a majority of fps boost guides, will recommend disabling power states and boost functionality in uefi/bios.

Why isn’t windows dealing with process scheduling in a way that reflects the changes you’ve made in your bios/uefi? Shouldn’t the bios/uefi settings be the ultimate authority on the matter?

1 Like

I maybe new here and my first post but would like to throw my hat in the ring. I have mine set to the maxium but my cpu is also at a stable speed. I don’t want my system checking this consistently which saves my AMD 8350 from unnecessary checks

How would the UEFI know when software is opened and what that software is asking? The software must interface with the operating system, which is what interfaces (gives instructions) with the hardware.

Yes Windows, Max Unix must check the cpu speed and, if a certain amount of requests are made, it is probably a good idea to significantly increase CPU speed from idle 800 Mhz clock.

Now I am wondering, since we all now know Windows is checking this at a staggering 65+ times per second, what is Unix (bsd / mac) and Linux set to, and has it changed significantly over the last three decades?

I think five seconds is an excellent setting. If you open a program that takes just under 5 seconds to finish starting, you could theoretically save a small amount of power, as it will not have enough time to re-check the frequency and update to faster speeds. This could keep the cpu at idle speeds to a longer duration. On the flip side, it can also keep the cpu at near base or full clockspeed, for five seconds longer than usual, wasting power and generating more heat and running cpu fans faster.

So it is a tradeoff between quick (near immediate) cpu clock speed adjustments and less system checking. How much energy is used in the processing of these checks, vs the energy used keeping the cpu at a higher clock speed when idle, five seconds later?

I still think it is a good setting, but maybe two, or three seconds may be a better compromise, depending on software used and average cpu load.

On my computer I have benched it as original and max. I did 5 tests and give minutes between startup and tests to ensure proper numbers.

There is a very small uptick in scores from original to tweaked setting of 5000. For having a older cpu I also felt a improved speed in loading,browsing web and other various activities but nothing yet in gaming(have not done any fps tests yet)