Tuesday, October 1st 2019

Windows 10 2H19 Update to Have "Favored Core" Awareness, Increase Single-threaded Performance

The next big update to Windows 10, slated for some time later this year, will have awareness to "favored cores." This leverages the ability of some of the latest processors to tell the operating system which of its cores are marginally "better" than the other, so it could push more of its single-threaded workloads to that core, for the highest boost clocks. Not all cores on a multi-core processor die are created equal, due to minor variations in manufacturing. Intel processors featuring Turbo Boost Max 3.0, as well as AMD Ryzen processors, have the ability to tell the operating system which of its cores are "better" than the other, which core is the "best" on the die, which is the "best" in a particular CCX (in case of "Zen" chips), and so on.

The best cores on a silicon are called "favored cores," and proper OS-level optimization could improve performance on 1-4 threaded workloads by "up to 15 percent," according to Intel. This, however, requires the processor to support Turbo Boost Max 3.0, which currently only HEDT processors do in the Intel camp. Over in the AMD front, Microsoft introduced more awareness to the multi-CCX and multi-die design of "Zen" processors with Windows 10 1903, and schedules workloads to make the most out of Zen's multi-core topology. "Zen" processors are able to report their best cores per CCX, per die, and per package, and the Ryzen Master software already displays this information, however, Windows hasn't been able to exploit favored cores. This will change with the upcoming major Windows 10 update.
Source: Bleeping Computer
Add your own comment

28 Comments on Windows 10 2H19 Update to Have "Favored Core" Awareness, Increase Single-threaded Performance

#1
lynx29
Or I will just overclock a i5-9600k to 4.9ghz all 6 cores no downclocking and tell M$ to eat my shorts? I wish Ryzen allowed me to do this, eh... that is the only thing Intel had going for it imo, enthusiasts enjoy that kind of stuff, and I am one of those types.
Posted on Reply
#2
Candor
You sir...made me lol :)
Posted on Reply
#3
sam_86314
A Windows update with a useful feature for me to look forward to?

What is this madness?!
Posted on Reply
#4
Lorec
sam_86314
A Windows update with a useful feature for me to look forward to?

What is this madness?!
Sounds great to me!
Wondering what else will be broken in exchange of this feature.
Rule of equivalent exchange must be kept ;)
Posted on Reply
#5
lynx29
Lorec
Sounds great to me!
Wondering what else will be broken in exchange of this feature.
Rule of equivalent exchange must be kept ;)
probably it will just mean more telemetry... oh in order for the "cores to know... we need to know every single detail of every single click you make, also we will be scanning all your Word documents for keywords... thanks and have a nice day., enjoy your core optimization!"
Posted on Reply
#6
evernessince
lynx29
Or I will just overclock a i5-9600k to 4.9ghz all 6 cores no downclocking and tell M$ to eat my shorts? I wish Ryzen allowed me to do this, eh... that is the only thing Intel had going for it imo, enthusiasts enjoy that kind of stuff, and I am one of those types.
All core overclocks are going to be the way of the past, especially as core counts increase. Due to variance in the silicon, some cores will always lag behind others. With an all-core overclock, this means that your overclock is only as good as your worst core. For something like an 8-core CPU, this limitation can significantly hurt your maximum OC potential.

FYI, Ryzen does allow you to do this, it's just that you'd be worse off. AMD's precision boost is able to extract far more performance by selectively boosting cores based on silicon quality, temperature, and CPU load. In addition, AMD PBO gives you the option to OC by increasing voltage, which improves performance without resorting to an all core overclock and forcing a dumb fixed voltage.

So yes, AMD's Ryzen 3000 series CPUs don't do great with blunt force overclocking methods. It's a good thing the processors have a far better, far more sophisticated system built in that extracts more performance out of the box or when Overclocking then an all core overclock will.
Posted on Reply
#7
chief-gunney
evernessince
All core overclocks are going to be the way of the past, especially as core counts increase. Due to variance in the silicon, some cores will always lag behind others. With an all-core overclock, this means that your overclock is only as good as your worst core. For something like an 8-core CPU, this limitation can significantly hurt your maximum OC potential.

FYI, Ryzen does allow you to do this, it's just that you'd be worse off. AMD's precision boost is able to extract far more performance by selectively boosting cores based on silicon quality, temperature, and CPU load. In addition, AMD PBO gives you the option to OC by increasing voltage, which improves performance without resorting to an all core overclock and forcing a dumb fixed voltage.

So yes, AMD's Ryzen 3000 series CPUs don't do great with blunt force overclocking methods. It's a good thing the processors have a far better, far more sophisticated system built in that extracts more performance out of the box or when Overclocking then an all core overclock will.
Sounds good in principle, but my experience with Ryzen 3000 cpu so far has shown much better performance and lower temps from using an all-core over-clock and fixed voltage over any of the auto overclocking features currently implemented on zen 2. IME the current algorithms are using voltages that are much higher than what is required and thus causing the chips to over heat and down throttle all core frequency to a level around 200 mhz lower than max boost. I've found that temp is the best way to determine what settings you go for with Zen 2 as it appears to me to be the most critical performance determinant with these 7nm chips.
I'm sure that AMD will continue to evolve and improve their algorithms and reach the position that you have stated and they are aiming for but I don't think they are quite there yet.
Posted on Reply
#8
Axaion
Wonder what itll break this time.
And how high itll make the kernel latency spike up too.

and extra bonus round; probably 10mhz windows timer, so rip getting proper syncs on usb devices for example

Also, if no one has seen it yet, theyre trying to hide installing the OS with a local account, you can still do it - but its even more convoluted now =\
Posted on Reply
#9
bonehead123
WTH ?.... how dare they actually do something to improve system performance......

perhaps this is just a smoke screen to divert attention from all the other stuff the most recent update breaks and/or scuddles all together...

WTH indeed......
Posted on Reply
#10
_Flare
In my opinion the 19H2 is the better 1903, i did a clean install with the release preview ISO, it runs really well.
The Balanced Powerprofile uses way less power when idling with Power & Sleep set to "Best Performance" 7W vs 15W for my Ryzen 2700.
Absolutely no need for any Ryzen-profile anymore.
Posted on Reply
#11
Aerpoweron
So no improvement for my Dual CPU Intel LGA 2011 setup? I have two 8-core Xeon CPUs. If i load 16 threads, only one CPU gets all the load. Which is crazy since i have 16 real cores in the system.
The Scheduler should prefer real cores of Hyper threating in my opinion. And Dual Core platforms have been around for ages :(
Posted on Reply
#12
cygnus_1
I'd bet money that this improvement probably comes from them modifying the Windows Kernel scheduler for BIG.little ARM processors with heterogeneous cores more than anything else.

Aerpoweron
So no improvement for my Dual CPU Intel LGA 2011 setup? I have two 8-core Xeon CPUs. If i load 16 threads, only one CPU gets all the load. Which is crazy since i have 16 real cores in the system.
The Scheduler should prefer real cores of Hyper threating in my opinion. And Dual Core platforms have been around for ages :(
If your dual socket system has 2 NUMA nodes, what you're experiencing isn't that uncommon. Load two 8 thread instances of whatever it is your doing and see if that spreads across all 16 physical cores. Very likely your workload is not entirely NUMA aware/compatible. You may have options in the BIOS to change the NUMA layout to be a single NUMA node at the cost of higher average memory latency.
Posted on Reply
#13
Slizzo
cygnus_1
I'd bet money that this improvement probably comes from them modifying the Windows Kernel scheduler for BIG.little ARM processors with heterogeneous cores more than anything else.



If your dual socket system has 2 NUMA nodes, what you're experiencing isn't that uncommon. Load two 8 thread instances of whatever it is your doing and see if that spreads across all 16 physical cores. Very likely your workload is not entirely NUMA aware/compatible. You may have options in the BIOS to change the NUMA layout to be a single NUMA node at the cost of higher average memory latency.
Yup, Linus just ran into this issue with the 64core Epyc processor. Many of the programs they were trying to run weren't NUMA aware, so they had to run parallel tasks to load up all 64 cores and 128 threads.
Posted on Reply
#15
Sora
Aerpoweron
So no improvement for my Dual CPU Intel LGA 2011 setup? I have two 8-core Xeon CPUs. If i load 16 threads, only one CPU gets all the load. Which is crazy since i have 16 real cores in the system.
The Scheduler should prefer real cores of Hyper threating in my opinion. And Dual Core platforms have been around for ages :(
I can guarantee that it does prefer the real core in a logical pair over the hypthread, always has as far back as Vista.

LGA 2011 cpu's don't support favoured core tech so....
Posted on Reply
#17
jahramika
I wonder if Windows is finally doing this now only because their new laptops will be using Ryzen
Posted on Reply
#18
danbert2000
We've had per-core overclocking for quite a while on Z boards, too bad it sounds like Windows won't be aware of that and instead rely on the processor to report "best cores." I could maybe get an extra 100 MHz on my best core but it's not worth it unless single threaded tasks are going to be directed to it.

This should help a lot with the awkward situation where Ryzen 3 processors are boosting the wrong threads. As in, yes they do boost several cores to that max boost frequency but without any ability to correspond that with actual load.
Posted on Reply
#19
Midland Dog
evernessince
All core overclocks are going to be the way of the past, especially as core counts increase. Due to variance in the silicon, some cores will always lag behind others. With an all-core overclock, this means that your overclock is only as good as your worst core. For something like an 8-core CPU, this limitation can significantly hurt your maximum OC potential.

FYI, Ryzen does allow you to do this, it's just that you'd be worse off. AMD's precision boost is able to extract far more performance by selectively boosting cores based on silicon quality, temperature, and CPU load. In addition, AMD PBO gives you the option to OC by increasing voltage, which improves performance without resorting to an all core overclock and forcing a dumb fixed voltage.

So yes, AMD's Ryzen 3000 series CPUs don't do great with blunt force overclocking methods. It's a good thing the processors have a far better, far more sophisticated system built in that extracts more performance out of the box or when Overclocking then an all core overclock will.
that first part is a load of bs, zen 2 hits its boost on 1 core yet cant retain that boost while the rest of the cores are active, you should be able to have a 3900x running 1 core at 4.7ghz and the rest as high as they can go but u cant, even with per core oc that 1 core that would happily do 4.7ghz wont do it while other cores are working, thats just pathetic design, whereas on intel you put all cores to the clock u want and make the crappy core clock lower, rather than borking the best core down
Posted on Reply
#20
evernessince
chief-gunney
Sounds good in principle, but my experience with Ryzen 3000 cpu so far has shown much better performance and lower temps from using an all-core over-clock and fixed voltage over any of the auto overclocking features currently implemented on zen 2. IME the current algorithms are using voltages that are much higher than what is required and thus causing the chips to over heat and down throttle all core frequency to a level around 200 mhz lower than max boost. I've found that temp is the best way to determine what settings you go for with Zen 2 as it appears to me to be the most critical performance determinant with these 7nm chips.
I'm sure that AMD will continue to evolve and improve their algorithms and reach the position that you have stated and they are aiming for but I don't think they are quite there yet.
Your independent observations contradict every professional review out there. Go and read Tom's Hardware or techspot's review. Tom's hardware specifically states they left out manual OC results because PBO achieves equal or better single threaded performance while using significantly less power.

FYI the ryzen 3000 series only uses higher voltages for ms. It makes zero logical sense that a permenantly high manual OC on all cores would use less power then a dynamic system that spends most of it's time below 1.0v and sometimes boosts some cores for 1-10ms at 1.45v.

"IME the current algorithms are using voltages that are much higher than what is required and thus causing the chips to over heat and down throttle all core frequency to a level around 200 mhz lower than max boost."

I'm going to call BS on this unless you provide a source. Not a single review found this problem. In fact with my own 3700X I've never had this problem. Heck my CPU hasn't even hit 80c under full load once, let alone throttle. For example, the 3700X maxes out at 64c on wPrime: https://www.guru3d.com/articles_pages/amd_ryzen_7_3700x_ryzen_9_3900x_review,7.html



Midland Dog
that first part is a load of bs, zen 2 hits its boost on 1 core yet cant retain that boost while the rest of the cores are active, you should be able to have a 3900x running 1 core at 4.7ghz and the rest as high as they can go but u cant, even with per core oc that 1 core that would happily do 4.7ghz wont do it while other cores are working, thats just pathetic design, whereas on intel you put all cores to the clock u want and make the crappy core clock lower, rather than borking the best core down
Lowering frequency based on number of cores under load is the same under Intel as it is AMD, just so you know. In addition, Intel also lowers clock speeds when running an AVX workload, massively so in some cases. AMD does not. You know that "AVX Offset" option in the BIOS of your Intel motherboard? That's how much in GHz you loose when running AVX.

"Whereas on intel you put all cores to the clock u want and make the crappy core clock lower, rather than borking the best core down"

Like I pointed out earlier, you can do so on AMD as well. You should read that post again, as I already delineated why that's a bad idea. There are some extreme caveats to your statement as well. For one, not every Intel CPU can set a manual clock. You have to buy a K series CPU and a Z series motherboard, which cost $$$. Every Ryzen CPU can be OC'd on any B class (midrange) or above motherboard. In addition, those Intel CPUs don't come with CPU coolers, which costs more $$$. On top of that, it's not as simple as inputting the clock you want and it working. Selecting, buying, installing, and tuning all take time and those requirements push this mostly into the enthusiast arena. Assuming you are the 1% of the market that does meet those requirements as an enthusiast you then have to hope you win the silicon lottery and get a chip that actually OC's all core past stock clocks. I frequent the Intel reddit and there are posts daily of people not getting 5 GHz all core when they spent a ton on the motherboard and cooling. Luck of the draw. There are even less people who get 5 GHz with an AVX offset of 0. According to silicon lottery, only 30% of 9900Ks kit 5.0 GHz all core with an AVX offset of 2.

https://siliconlottery.com/collections/all/products/9900k50g?variant=15392435896406

This means your effective clock in games that use AVX is 4.8 GHz. I don't even want to know how many 9900Ks hit 5.0 GHz without an offset but it's likely astronomically low. Even overclocked after spending a ton more money and time you have far less then a 30% chance to escape that exact "pathetic" situation you accused AMD of.
Posted on Reply
#21
eidairaman1
The Exiled Airman
I do not like how services with a _ cannot be changed/disabled in 10.

Long Live 7 and Linux!
Posted on Reply
#22
Jism
eidairaman1
I do not like how services with a _ cannot be changed/disabled in 10.

Long Live 7 and Linux!
Google disable telemetry windows 10,

Use shut up windows 10 (google)

Pretty much done.
Posted on Reply
#23
Prima.Vera
"This, however, requires the processor to support Turbo Boost Max 3.0, which currently only HEDT processors do in the Intel camp. "
...
ok...
Posted on Reply
#24
eidairaman1
The Exiled Airman
Jism
Google disable telemetry windows 10,

Use shut up windows 10 (google)

Pretty much done.
Even the gui change is meh, 95-7 was perfect.

MS needs to get a clue.
Posted on Reply
#25
Jism
eidairaman1
Even the gui change is meh, 95-7 was perfect.

MS needs to get a clue.
Classic Start Menu is your friend. Fully customizable.

I dont like W10 either, there's a few things that simply dont work right and i wished i could have returned back to Windows 7 in a snap, but there's not much choice. Many of the software i use will stop having support for W7 soon. We're a product now.
Posted on Reply
Add your own comment