Is ProBalance capable of managing Strix Point p-cores and e-cores?

Started by jakeblargh, February 19, 2025, 01:58:21 PM

Previous topic - Next topic

jakeblargh

I was wondering if Process Lasso's ProBalance has been updated to better utilize Strix Point's p-cores and e-cores which from my limited understanding behaves and is structured quite differently from Intel's p-cores and e-cores. The reason I am asking is because these new APUs struggle with games that utilizes all cores (specifically Cyberpunk and Elden Ring) due to poor Windows CPU scheduling and inter-core latency problems when using both p-cores and e-cores in a gaming process.

Jeremy Collake

It's a good question, as games that utilize *all* cores are less successfully managed with Process Lasso's Effiency Mode and CPU Affinity rules. Thus, an algorithm like ProBalance might help. However, as of now, I do not believe it will be effective. ProBalance is more focused on preventing other processes from impeding your performance critical games than optimizing the thread scheduling within a single process.

In some cases, you might be better off constraining the game to P-cores with CPU Affinity rules, despite the reduction in total compute then available to the game, but that depends on how bad the performance issues are when it is utilizing all of both classes of cores.

We are going to spend some time researching this and will update you with any news.
Software Engineer. Bitsum LLC.

jakeblargh

Quote from: Jeremy Collake on February 20, 2025, 05:16:18 AMIt's a good question, as games that utilize *all* cores are less successfully managed with Process Lasso's Effiency Mode and CPU Affinity rules. Thus, an algorithm like ProBalance might help. However, as of now, I do not believe it will be effective. ProBalance is more focused on preventing other processes from impeding your performance critical games than optimizing the thread scheduling within a single process.

In some cases, you might be better off constraining the game to P-cores with CPU Affinity rules, despite the reduction in total compute then available to the game, but that depends on how bad the performance issues are when it is utilizing all of both classes of cores.

We are going to spend some time researching this and will update you with any news.

I am wondering if Process Lasso is capable of automatically detecting games and scheduling them on p-cores for these new Strix Point APUs without having to set the affinities for each gaming process. There is a major regression in performance when gaming workloads utilize both p-cores and e-cores due to the big latency (albeit not as bad as launch) between the two CCXs as can be seen in this timestamped video: https://youtu.be/Th0LONlA9a8?t=959

Somehow, this issue is not prevalent at all in Linux (specifically Bazzite OS) which I would presume is because of the Linux scheduler. Here is a video showing massive performance increases when running games on Linux vs. Windows 11 24h2: https://www.youtube.com/watch?v=UAhVz5XcfpM

jakeblargh

Quote from: Jeremy Collake on February 20, 2025, 05:16:18 AMIt's a good question, as games that utilize *all* cores are less successfully managed with Process Lasso's Effiency Mode and CPU Affinity rules. Thus, an algorithm like ProBalance might help. However, as of now, I do not believe it will be effective. ProBalance is more focused on preventing other processes from impeding your performance critical games than optimizing the thread scheduling within a single process.

In some cases, you might be better off constraining the game to P-cores with CPU Affinity rules, despite the reduction in total compute then available to the game, but that depends on how bad the performance issues are when it is utilizing all of both classes of cores.

We are going to spend some time researching this and will update you with any news.

Can I keep ProBalance and Efficiency Mode on while also setting CPU affinities for games to p-cores? What happens when that game/process gets put in the background? Will efficiency mode which puts processes in e-cores conflict with CPU affinity rule putting that particular process in p-cores?

Jeremy Collake

You have to create rules for the actions you want, but P-core CPU affinities for at least some games on these platforms does sound appropriate.

The Linux scheduler usually doesn't suffer from the same performance impediments as Windows does on heterogenous systems. Go figure.

QuoteCan I keep ProBalance and Efficiency Mode on while also setting CPU affinities for games to p-cores?

Yes, certainly. Those features will generally not interfere with each other, though CPU affinity will take precedence over Efficiency Mode. So, if you've got a P-core CPU affinity, it will stay there regardless. When a game goes in the background, ProBalance may act on it, but that won't change the Effiency Mode or CPU affinity, unless you've altered the ProBalance advanced settings.
 
Software Engineer. Bitsum LLC.

jakeblargh

Quote from: Jeremy Collake on February 20, 2025, 05:03:45 PMYes, certainly. Those features will generally not interfere with each other, though CPU affinity will take precedence over Efficiency Mode. So, if you've got a P-core CPU affinity, it will stay there regardless. When a game goes in the background, ProBalance may act on it, but that won't change the Effiency Mode or CPU affinity, unless you've altered the ProBalance advanced settings.



This is precisely how I want it to work anyway so that's perfect. Thank you!