If I have a quad core running one program all 4 cores are used right? I think that's right. So if I run a game for example, it's going to use all 4 cores equally. In other words, the same code will run on all 4 cores unless the program is specifically written to execute some code on core 1 and some code on core 2 and some on core 3 and so on, right?
But what if I'm running say 4 programs at the same time? Is there any load shifting between the cores or are all 4 programs still going to try to use all 4 cores as much as they can? In other words, even though the programs are not optimized for multiple cores, is the chipset or core logic (or whatever it is that controls this) smart enough to recognize that there are 4 programs running and try to preferrentially execute one program per core or somehow balance out the usage?
But what if I'm running say 4 programs at the same time? Is there any load shifting between the cores or are all 4 programs still going to try to use all 4 cores as much as they can? In other words, even though the programs are not optimized for multiple cores, is the chipset or core logic (or whatever it is that controls this) smart enough to recognize that there are 4 programs running and try to preferrentially execute one program per core or somehow balance out the usage?