• Competitor rules

    Please remember that any mention of competitors, hinting at competitors or offering to provide details of competitors will result in an account suspension. The full rules can be found under the 'Terms and Rules' link in the bottom right corner of your screen. Just don't mention competitors in any way, shape or form and you'll be OK.

Analysis of Intel stock turbo behaviour

Soldato
Joined
27 Feb 2015
Posts
12,690
So i have commented in the past on how I think XFR works really well for single core performance,

Now I have a 9900k in my system I have been looking at how well the intel turbo clocks work.

So unlike AMD, Intel requires cpu parking to be active for their higher speed bin's to function. Whilst AMD simply requires the load to be low enough. In short this means it is way easier to get single core boosts on day to day usage vs Intel.

Apparently Windows 10 by default disable's cpu parking on desktops, if this is correct it means on a out of the box intel system, it will only use the all core turbo clock's e.g. 4700mhz on a 9900k.

To expose the core parking settings in windows power options applet requires a registry setting change which is already done on my system , the OS is windows 8.1 (planned to shift this to win LTSC later this year).

On my balanced profile min cores for cpu parking was set to 60%, so this basically means only a max of 40% cores can be parked, this means that the 1-2 core 5ghz clock's will never kick in for more than a split second. On aggressive, it is set to 100%, meaning no core parking at all, so max 4.7ghz.

Windows itself also has a weird cpu scheduling behaviour where it will frequently move low threaded workloads to different cores, linux doesnt behave this way like most other OS, but windows does for some reason, this adds content switch overheads and would also lose some performance on turbo clock system sas the cpu would have to adjust clock speeds on the new core when it switches, and there is time lag when this happens.

There is on exception though, at intel's request Microsoft developers made it so if a core is parked it will not be woken up for the switching on light threaded workloads, so in practice this should also boost single, low threaded workload performance on top of the faster clock speeds.

So I have done some quick dirty tests using cpuz bench, since that is executed so quickly.

The results are interesting.

If I park 80% of cores, (it wont park any more regardless of how I set the %). this leaves 2 physical cores active, and the cpu I can see in hwinfo maintains 5ghz during the single thread test, however the score is "lower" than if all cores are awake, and its "not" within margin of error. So e.g. Here is two scores.

All cores active 4700mhz - 559 single core result
2 cores active 5000mhz - 538 single core result

I also tested an in between scenario and can see with 50% of cores parked, which just about gives the 4.9ghz binning, I get a whopping 580. The default 40% cores parked gives 555 at 4800mhz.

This is very odd behaviour, on my 2600X system the scores correlate with what is expected.

The theories I have are as follows.

1 - There is background cpu activity, when more cores are enabled, then this load is less likely to interfere on the benchmark, whist with only 2 cores it is likely the benchmark is competing with background windows activity for resources, that is logical. But this doesnt make complete sense as it would also apply to AMD.
2 - On the AMD system, the ryzen scheduler seems to adjust the windows scheduling behaviour so that single threaded workloads stick to one core, whilst on Intel, they move around all active cores, which does lose performance.

I also did some tests by bumping the all core speeds so e.g. all cores to 4800mhz, and this behaves as expected bumping scores when the all core turbo is activated.

So the short summary of this is that the stock turbo feature of intel chips doesnt even seem to perform properly due to a combination of the windows parking behaviour and the scheduling behaviour. The only way on these system's to get full single core performance is in my view is to actually do an all core clock boost. But it also works ok if you configure the 4 core boost to 5ghz and set cpu parking to 50% in windows. I think this goes some way to explaining as well why OOB tests of intel vs AMD why AMD is performing so well. As intel's turbo seems flawed in my opinion, in that respect the tests are fair, its up to intel to fix the feature.
 
yep 17.01

To explain the parking issue a bit more.

So a 9900k has 8 cores.

On this system I tested it on, its always the same cores that clock higher, so e.g. always the first 2 cores only for 5ghz, 3rd for 4.9, 4th and 5th for 4.8 and rest 4.7.

Yet windows isnt favouring those cores on single threaded tasks, meaning its only "sometimes" those processes get 5ghz performance. Whilst on AMD they get scheduled to the fast core. Even when by luck the thread is assigned to a 5ghz core, it wont stay there long as windows keeps moving it around. Someone queried this on stack overflow and was told by a software engineer it is apparently to manage load on cores evenly even though it loses performance. But when a core is parked, then it wont get scheduled for low threaded tasks, meaning the lottery of the thread hitting a 5ghz core is more favourable. With a 50% core parking policy, you have a 1 in 2 chance instead of 1 in 4 to get a 5ghz core.
 
Back
Top Bottom