Question How do I use only my single core to run a specific program?

Sep 19, 2022
3
0
10
Hi, I play a very old online game which, like many older games, only makes use of the single core. Despite this, all cores seem to run when playing the game and CPU temp gets very high as a result.

I want to make it so that only the single core runs when loading this specific program.

How can I achieve this? Thanks
 
Hi, I play a very old online game which, like many older games, only makes use of the single core. Despite this, all cores seem to run when playing the game and CPU temp gets very high as a result.

I want to make it so that only the single core runs when loading this specific program.

How can I achieve this? Thanks
Once the game is running open TaskManager, then select the Details tab. Find the game process in the list, right click on it then click on AFFINITY. A dialogue will open, uncheck all the "CPU's" you do NOT want the process to run on leaving the one it will. Windows treats hyperthreads as a virtual CPU so there will be twice the number of "CPU's" as you have cores. I believe both threads for one hyperthreaded core are in an ordered pair so 0 and 1 would be a core, 2 and 3 another and so on.

You'll have to do this every time you restart the game after killing it but you can create a shortcut file to run the program and do this for you.

But this is a bad idea since it will prevent Windows' scheduler from operating as intended. The scheduler normally moves a single-threaded process from one core to another for thermal leveling, making it look like it's multi-threaded to slow monitoring programs. But "glueing" one highly active process to one core will heat it up faster causing the processor's boost algorithm to pull back clocks sooner and further. Windows' scheduler knows how to move a process between cores with shared resources so there is little to no performance impact from it. This is the way modern multi-core and hyper-threaded processors are designed to work.
 
Last edited: