Hacker News new | ask | show | jobs
by syntheticcdo 1148 days ago
No need - the chipset drivers automatically park the non-VCache CCD cores when a game is running (effectively turning the 7950X3D into a 7800X3D).
1 comments

How would they know it's a game or not a game? I'm playing my games on Linux anyway. Haven't heard of schedulers using such logic.

I'd expect some kind of predictive AI that analyzes thread behavior to be able to help. But not sure if anyone tried making a scheduler like that.

Windows already has a system for detecting what is and isn't a game for purposes of switchable graphics laptops, so I imagine they reuse that.

You can get pretty good heuristics by looking at graphics API usage.

On Linux you could just put the appropriate taskset or numactl command in your game shortcut, it's pretty easy.

And this works pretty well, there's flickering on screen, but it is switching graphics. Maybe there's also some mouse stuttering or something as threads are moved to the active chiplet. This basically seems like AMD's version of big.LITTLE, except there's only a cache and frequency difference between cores, not altogether different cores.
Under Windows the driver has a whitelist of process names that it recognizes and pins to V-cache. Of course you don't have these problems if you buy the 7800X3D...
Well, the simplest one would be "prioritize whatever talks with input devices and video card"

I guess the hard part would be distinguishing between "a video game getting inputs" and "discord app getting push to talk key", but at the moment you moved all of the noninteractive system stuff to slow cores and only "things using keyboard" on fast cores it's already pretty good approximation.

Not every game benefits from it as well (vs higher core clocks), so it's not really a comprehensive method.
AIUI they currently use a rather basic system on Windows that asks "is the Xbox game bar active?", and using that to switch off the low cache cores. I suspect if these sorts of chips become common we might get something a bit more nuanced.
It’s the same mechanism that triggers the game mode in Windows. You can tag a program in the Xbox game bar as a game if it hasn’t recognized it by default.