How does a program "choose" which core to run on? It was my understanding that the operating system determines which program gets processed on which core.
APPLICABLE EXAMPLE
Firefox has suddenly and rampantly been running up CPU usage on the furthest last core (i7 930 Hyperthreaded). All of the other cores are nearly usage-free.
I'm not sure why this last core is being unnecessarily picked on. I'm curious as to how it'd get singled out. Usually the first two cores handle the brunt of programs' processing.
Answer
You would be correct. The app will run on whichever core the operating system happens to choose. You can set the "affinity" for an application to a specific core, telling the OS to only run the app on that core. It's not a good idea from my understanding, but obviously it exists for a reason; so there are times it may be necessary to adjust.
In Windows you can use Task Manager:
Right click on the process, and choose "**Set Affinity**".
As far as the technical aspects of it:
Wikipedia article on scheduling
No comments:
Post a Comment