[SOLVED] AMD Threadripper using 50% of cores at 100% load rather than 100% cores at 50% load

May 27, 2020
3
0
10
Before the PC used 50% load spread out across all the cores, which lead to slightly lower temperatures under stress during long duration (often I leave it on for many hours unattended). Now, the PC uses only 50% of cores, but all cores are on 100% load. As far as I can tell what it is essentially doing is simultaneously multithreading. Is there a way to prevent this from happening, as I still want to get the boost from smt, but don't want all the same cores to always be under a heavy load, as temperatures are around 6-10c higher than normal this way.
 
Solution
Other software uses hyperthreading while there are still unused cores (ie 1 core maxed at 100% rest at 0%).
One core running at 100% doesn't mean that it is running SMT and one core running at 50% doesn't mean that it is not using SMT.

If one single thread can go up to 100% usage on one core it will do so.
Task manager will juggle loads around,if one thread uses 100% of one core but gets juggled around between two cores then both cores will show 50% usage if it gets juggled between four then all four will show 25%, so looking at task manager will not tell you if one core is fully loaded or not.
As far as I can tell what it is essentially doing is simultaneously multithreading.
I'm afraid that only you are understanding this one.

Can you tell us what you are running?
Is your software maybe only using one of the core complexes?
Using 50% load spread out across all the cores means that your software only runs half the amount of threads your CPU is capable of so it would make sense to only use one.
Did this maybe happen after a bios update?AMD tweaked performance for desktop I don't know if they also tweaked it for threadripper at the same time.

You can go to power option in windows and force 50% max on your CPU but I don't know if that is going to spread the load out to all cores.
 
May 27, 2020
3
0
10
It varies software to software. Some software uses all the available cores at 50% load before using hyperthreading (or in this case, since AMD, SMT). Other software uses hyperthreading while there are still unused cores (ie 1 core maxed at 100% rest at 0%). Since the process doesn't require the usage of every thread, I would prefer it use the unused cores rather than the other way around.

Essentially trying to understand why this happens and if there is an easy way to prevent this from happening.
 
Other software uses hyperthreading while there are still unused cores (ie 1 core maxed at 100% rest at 0%).
One core running at 100% doesn't mean that it is running SMT and one core running at 50% doesn't mean that it is not using SMT.

If one single thread can go up to 100% usage on one core it will do so.
Task manager will juggle loads around,if one thread uses 100% of one core but gets juggled around between two cores then both cores will show 50% usage if it gets juggled between four then all four will show 25%, so looking at task manager will not tell you if one core is fully loaded or not.
 
Solution
May 27, 2020
3
0
10
Hi,

I use Core Temp to monitor my processor. When running some processes it shows the same cores (or threads) under load and others under no load at all. Hope this helps.

Thanks for your responses so far.
 

Zerk2012

Titan
Ambassador
Before the PC used 50% load spread out across all the cores, which lead to slightly lower temperatures under stress during long duration (often I leave it on for many hours unattended). Now, the PC uses only 50% of cores, but all cores are on 100% load. As far as I can tell what it is essentially doing is simultaneously multithreading. Is there a way to prevent this from happening, as I still want to get the boost from smt, but don't want all the same cores to always be under a heavy load, as temperatures are around 6-10c higher than normal this way.
usually on 50% usage on all cores unless your looking at each core you have some fully loaded and some used very little thus the 50% reading of the processor. For instance 6 cores fully loaded 12 cores at 25% that would give you a 50% CPU reading on the processor.

This will very depending on the program used and how well it scales with cores not really anything you can do about that because you can't force a program that can use 6 cores fairly well to start using 18 cores evenly or a program that just uses 2 or 3 cores to start using 18 evenly.

^^^^^^^^^Your statement. When running some processes it shows the same cores (or threads) under load and others under no load at all.
 
Last edited: