Windows 7 load balance ... well maybe ...

Psi*

Tech Monkey
This isn't really a complaint, whine, or kudos about Win 7. I guess it is an observation & maybe a bit of a stretch at that. The pic below shows 8 threads of one of my favorite programs running running ... and it 'tis a beautiful thing!;);) Also shown is SpeedFan & Core 0, 2, 4, 6 temps.

You will notice a couple of things. Most obvious per SpeedFan, there is quite a difference across the core temps. It has always been this way & stock clock or OC-ed (this pic is at 4.4+ GHz:D) loaded or at idle. And, was also this way before putting the Indigo Xtreme in ... I did have Arctic Céramique thermal paste that came with the water block for system setup.

Also, you can tell that there really is *not* a 1:1 correspondence between core temps & CPU load. Well, maybe. But it is not consistent. The order of the core temps is always the same and very similar to this spread.

Also note that the load is not completely balanced across all threads. Thread #6 is a few percent lower. Probably splittings hairs. Except that sometime the lower thread is #2 & #6 is level-ish with the rest.

Don't you wonder why the threads vary only & not the pair of threads on a core?

I have not turned off hyperthreading in bios just to see how things might balance out. Although typically this program has always maxed (99% to 100%) the CPU load at 4 threads on previous CPUs. The program does complete much more quickly with 8 threads tho. So there is not a lot of incentive to do that.

This does get me thinking about the burn in programs. They do a great job of maxing the CPU load ... 100%. Perhaps an interesting option would be a means of dialing down the CPU utilization by percent, not with thread count?
 

Attachments

  • W7 load balance V core temp.jpg
    W7 load balance V core temp.jpg
    236 KB · Views: 546

Rob Williams

Editor-in-Chief
Staff member
Moderator
Whew, 18 hours left on that project... on a 4.0GHz Core i7? Now that's what I call an intensive CPU job!

Psi* said:
Don't you wonder why the threads vary only & not the pair of threads on a core?

There are essentially eight separate jobs, though, so each core isn't going to have an exact spread across the two threads. In computing, this kind of thing is too hard to predict or control. At least for you, it's using almost 100% of the CPU, that's great to see from a single real scenario. For what it's worth, if you do turn off HyperThreading, your performance will be lessened. The way that program is effectively taking advantage of all eight threads, I'm not sure I'd ever consider disabling it, heh.

Psi* said:
This does get me thinking about the burn in programs. They do a great job of maxing the CPU load ... 100%. Perhaps an interesting option would be a means of dialing down the CPU utilization by percent, not with thread count?

Hmm, what exactly do you mean by this? Just to throw it in there, stress-testing applications tend to be unrealistic in the way that they push the CPU so hard. LINPACK, for example, likely pushes the CPU harder than any other scenario on earth could. It's truly impossible to expect a scenario on a home PC to max out the CPU 100%. It might come close if memory usage is much higher, but even then, I'm not sure I ever ran any test that truly topped out a CPU.
 

Psi*

Tech Monkey
Hmm, what exactly do you mean by this? Just to throw it in there, stress-testing applications tend to be unrealistic in the way that they push the CPU so hard. LINPACK, for example, likely pushes the CPU harder than any other scenario on earth could. It's truly impossible to expect a scenario on a home PC to max out the CPU 100%. It might come close if memory usage is much higher, but even then, I'm not sure I ever ran any test that truly topped out a CPU.
That is the point. Adding in the ability to dial back % CPU utilization would give a utilization vs. temp curve.

Although maybe more useful for a system that is crashing, it would be helpful to know what % utilization & temp it became stable ... might give a little easier correlation about voltage setting & stability, for instance.
 

Kougar

Techgage Staff
Staff member
That is the point. Adding in the ability to dial back % CPU utilization would give a utilization vs. temp curve.

Although maybe more useful for a system that is crashing, it would be helpful to know what % utilization & temp it became stable ... might give a little easier correlation about voltage setting & stability, for instance.

You're talking about an OS feature? Honestly this is left up to the actual program... I can for example tell either of my Folding@home clients to use any % of the CPU I wish... 90%, 50%, whatever. It depends on the program and if the option was written into it.

Generally the system remains very responsive under 99% loads, all I do is change the VMware priority to below normal, and I can even play games in the foreground without obvious lag. I can tell when VMware is running because it does impact framerates and smoothness to a small degree, but it's not enough to hurt in FPS games, let alone slower action RTS games. XP was never able to optimize the memory usage to make this possible.
 
Top