Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
IBM_THINKPAD_R51

Why doesn't applications use my second physical CPU

Recommended Posts

Posted · Original PosterOP

So i have 2 Intel X5690's in my system, but only one game (Dragon ball xenoverse 2), Cinebench R15/R20, Premire Pro, and handbrake use the 2 Physical cpu's (im not talking about cores). But every other game only uses the first or second cpu (and all 6 cores and 12 threads on that one cpu). Also as another test, i turned off gpu rendering for youtube videos on chrome://flags and when playing 4 or 8K video, chrome only uses 1 cpu.

 

 

Why does barely any application support 2 cpu's? Is creating applications that are multithreaded DIFFERENT from creating one that is multi-cpu? 

Link to post
Share on other sites
Quote

Is creating applications that are multithreaded DIFFERENT from creating one that is multi-cpu? 

Yes. I hope the machine was cheap because 99% of consumer level software will not utilise both CPU's and especially not games 

Link to post
Share on other sites
9 minutes ago, IBM_THINKPAD_R51 said:

Why does barely any application support 2 cpu's? Is creating applications that are multithreaded DIFFERENT from creating one that is multi-cpu? 

It's because of an issue called non-uniform memory access (https://en.wikipedia.org/wiki/Non-uniform_memory_access). Imagine if the application was running on CPU 1 but the data it wants is on RAM that's handled by CPU 2. It's going to take much longer to access it. You could have the system move the contents over, but what if the application starts running on CPU 2 because everything on CPU 1 was too busy? Now that data has to be moved back. Either way for high performance applications like games, this can become an issue.

 

So to avoid this problem altogether, a lot of applications simply don't allow themselves to be run on multiple processors. This is less of a problem with multiple cores because memory access is uniform across all the cores in a processor (except for Threadripper, which has the NUMA problem).

Link to post
Share on other sites
7 minutes ago, IBM_THINKPAD_R51 said:

Is creating applications that are multithreaded DIFFERENT from creating one that is multi-cpu? 

Yes. Multi-CPU has to do with scaling, multithread has to do with simple thread count.

 

It is possible to make applications use the second CPU if you force it to do so in Windows; for example you can run browsers and other applications like Spotify or Discord off of one CPU, and run all your games on the other CPU. You can't force an application to run partially on one CPU and partially on the other CPU, though.

Link to post
Share on other sites
Posted · Original PosterOP
3 minutes ago, Mira Yurizaki said:

It's because of an issue called non-uniform memory access (https://en.wikipedia.org/wiki/Non-uniform_memory_access). Imagine if the application was running on CPU 1 but the data it wants is on RAM that's handled by CPU 2. It's going to take much longer to access it. You could have the system move the contents over, but what if the application starts running on CPU 2 because everything on CPU 1 was too busy? Now that data has to be moved back. Either way for high performance applications like games, this can become an issue.

 

So to avoid this problem altogether, a lot of applications simply don't allow themselves to be run on multiple processors. This is less of a problem with multiple cores because memory access is uniform across all the cores in a processor (except for Threadripper, which has the NUMA problem).

This system i have Has NUMA nodes tho, how do i fix the issue?

Link to post
Share on other sites
Posted · Original PosterOP
Just now, Mira Yurizaki said:

You don't. It's a hardware configuration.

so out of curiosity...what if i had one stick of 16GB ram?

Link to post
Share on other sites
Posted · Original PosterOP
2 minutes ago, Mira Yurizaki said:

For the entire system? It won't work, both CPUs need RAM.

haha whats funny is that i used to have a dual pentium 2 system and almost every application in windows 7 used the dual cpu system just fine XD

Link to post
Share on other sites
18 minutes ago, IBM_THINKPAD_R51 said:

haha whats funny is that i used to have a dual pentium 2 system and almost every application in windows 7 used the dual cpu system just fine XD

Because memory is shared in that case. That's why you only have one set of RAM slots total, instead of a single or pair per CPU.


Main PC: sleeper Dell on profile boi

Laptop: Latitude E4310 w/ i5 580M, 8GB RAM, 120GB 840 EVO, Intel Centrino Ultimate-N 6300 wireless card, Windows 7 Pro x64

Zeus: 2x 1266MHz PIII, Supermicro P3TDDE, 1x 512MB PC133 ECC, Radeon 9600 Pro 128MB, 30GB DiamondMax Plus 8 + 80GB IBM DeskStar, Windows XP Pro SP3

 

On 2/26/2019 at 2:37 AM, campy said:

when my girlfriend comes over and sees my dining room and kitchen counters covered in pc parts from pre 2006 she immediately takes off her clothes

nothing sexual, she just doesnt want the nerd dust on her clothes 

Link to post
Share on other sites
Posted · Original PosterOP
15 minutes ago, flibberdipper said:

Because memory is shared in that case. That's why you only have one set of RAM slots total, instead of a single or pair per CPU.

There has to be some kind of mode like that in my BIOS right?

Link to post
Share on other sites
39 minutes ago, Mira Yurizaki said:

For the entire system? It won't work, both CPUs need RAM.

Back in the day, yes.

 

Modern systems that have Intel's QPI link will allow CPUs to share memory across the whole system, regardless of which slot it's installed in. My Athlon MP system would probably throw a fit if I didn't have at least two DIMMs installed, but an Intel system with let's say dual LGA 2011 won't necessarily care where the memory is installed on the board.

Link to post
Share on other sites
Posted · Original PosterOP
1 minute ago, Crunchy Dragon said:

Back in the day, yes.

 

Modern systems that have Intel's QPI link will allow CPUs to share memory across the whole system, regardless of which slot it's installed in. My Athlon MP system would probably throw a fit if I didn't have at least two DIMMs installed, but an Intel system with let's say dual LGA 2011 won't necessarily care where the memory is installed on the board.

The chipset i am running on right now has a QPI link

Link to post
Share on other sites
Just now, IBM_THINKPAD_R51 said:

The chipset i am running on right now has a QPI link

As far as I'm aware, every halfway modern Intel CPU will have at least one QPI link.

Link to post
Share on other sites
12 minutes ago, IBM_THINKPAD_R51 said:

There has to be some kind of mode like that in my BIOS right?

Couldn't tell you since I have no experience with anything newer than dual 370. Find the manual for what you have and see what it says.


Main PC: sleeper Dell on profile boi

Laptop: Latitude E4310 w/ i5 580M, 8GB RAM, 120GB 840 EVO, Intel Centrino Ultimate-N 6300 wireless card, Windows 7 Pro x64

Zeus: 2x 1266MHz PIII, Supermicro P3TDDE, 1x 512MB PC133 ECC, Radeon 9600 Pro 128MB, 30GB DiamondMax Plus 8 + 80GB IBM DeskStar, Windows XP Pro SP3

 

On 2/26/2019 at 2:37 AM, campy said:

when my girlfriend comes over and sees my dining room and kitchen counters covered in pc parts from pre 2006 she immediately takes off her clothes

nothing sexual, she just doesnt want the nerd dust on her clothes 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×