100% gpu/cpu load possible?

AAlcHemY

Newcomer
I was just thinking about this, is it possible to have a 100% load on a gpu or a cpu? I would say that its impossible on both, because some parts aren't always used. But more info on it is very welcome.

Thanks. :)
 
That depends... You seem to think of 100% load as "all units in the processor are busy". And that is very hard, if not impossible to achieve.
But usually 100% load means that the processor is running a task all the time, and never goes into the idle thread, which is quite easy to achieve ofcourse.
 
AAlcHemY said:
Sorry, it wasn't that clear. Yeah, I actually meant "all units in the processor are busy".

Heh, yeah of course its possible with specially written assembly language designed to execute instructions in a way to use everything at once. Now how much useful stuff you can do where you can have all the units active is more questionable but I'm sure there are plenty of tasks where its all quite useful.

Hyperthreading on the P4 definately helps achieve almost full usage of all the units a lot of the time.
 
Cryect said:
Now how much useful stuff you can do where you can have all the units active is more questionable but I'm sure there are plenty of tasks where its all quite useful.
I was thinking about those stress tools, they all claim 100% load. But the temperature at full load is different, so they must use other parts of the cpu or gpu to get that full load. In other words, can there be a 'ultimate' stress tool?

Thanks.
 
Heh, yeah of course its possible with specially written assembly language designed to execute instructions in a way to use everything at once.

Not at all. Even with assembly you cannot always keep all units busy. It depends on the architecture of the processor aswell. Sometimes it is just physically impossible to feed the different instructions to the different units fast enough.

I was thinking about those stress tools, they all claim 100% load. But the temperature at full load is different, so they must use other parts of the cpu or gpu to get that full load. In other words, can there be a 'ultimate' stress tool?

These stress tools just pick some kind of 'worst case' load, but this does not mean that ALL units in the CPU are busy all the time. It means that they use as many units as possible, and make each unit do as much as possible.
This is ofcourse very specific for each architecture.
With GPUs I don't think it is possible at all, especially with NVIDIA's hardware, which has multiple pipelines. If you use the shader pipeline, you cannot use the fixed function pipeline at the same time, for example. So some units are just mutually exclusive.
 
Um, I don't think there is still a fixed-function pipeline in the NV4x. There may be some extra transistors dedicated to fixed function use, but the two programming paths will share the core processing parts.
 
Scali said:
With GPUs I don't think it is possible at all, especially with NVIDIA's hardware, which has multiple pipelines. If you use the shader pipeline, you cannot use the fixed function pipeline at the same time, for example. So some units are just mutually exclusive.
I don't think NVIDIA has a T&L pipeline in the NV4x anymore. They did in the NV30/NV35/NV38 iirc (and not NV31/NV34/NV36 too, but that's just iirc again) - but there is NO evidence that there is one in the NV40 anymore. My guess, thus, is that there isn't.
But of course, there always are many dedicated units in a GPU, so it remains impossible (and in the NV40 for example, some arithmetic units share some big MUL-related code, and because of this they CANNOT be used at the same time).

Uttar
 
I didn't mean the NV4x in particular. All others do though.
I am not sure if NV4x still has the FX16 pipe though, or if that is offloaded to the FP32 aswell now... Somehow I suspect the FX16 pipe to still be there, and in that case, the theory still holds even for NV4x.
 
No, but way-pre-launch for-developer or just internal documents talked about FX16 registers (not FX16 processing units; just as an alternative to FP16, even though there only are FP32 FPUs in there).
Either that was part of NVIDIA's misinformation campaign (as were most for-developer things), or it was scrapped between September 2003 and launch.

Uttar
 
More likely it would have just been a second way to reduce register pressure from FP32, an alternative to FP16.
 
When I want to stress all the components of my CPU I run several stress tests simultaneously (some stressing ALU units some FPU units and some stressing load store units with lots of RAM operations).
Although the CPU work is divided into these components sequentially (at least in non-hyperthreaded CPUs) so all the components of the CPU are not really used all the time but in a sequential order, it gives me the illusion of 100% CPU load in all its components.
 
phenix said:
When I want to stress all the components of my CPU I run several stress tests simultaneously (some stressing ALU units some FPU units and some stressing load store units with lots of RAM operations).
Although the CPU work is divided into these components sequentially (at least in non-hyperthreaded CPUs) so all the components of the CPU are not really used all the time but in a sequential order, it gives me the illusion of 100% CPU load in all its components.

What programs do you use for that? I've been wondering about how to stress test the various aspects of my parents system to find out what is causing the spontanious memmory dump/reboots. I tried Prime95 and 3DMark01, but neither caused the crash, though it does so very frequently in general usage... though I was running them seperately? Should I run them at the same time?

Oh, and sorry for the off-topic...
 
OICAspork said:
phenix said:
When I want to stress all the components of my CPU I run several stress tests simultaneously (some stressing ALU units some FPU units and some stressing load store units with lots of RAM operations).
Although the CPU work is divided into these components sequentially (at least in non-hyperthreaded CPUs) so all the components of the CPU are not really used all the time but in a sequential order, it gives me the illusion of 100% CPU load in all its components.

What programs do you use for that? I've been wondering about how to stress test the various aspects of my parents system to find out what is causing the spontanious memmory dump/reboots. I tried Prime95 and 3DMark01, but neither caused the crash, though it does so very frequently in general usage... though I was running them seperately? Should I run them at the same time?

Oh, and sorry for the off-topic...

I use prime95 to stress RAM operations. One of its torture tests make heavy use of memory operations. You can also try Memtest for the purpose.
I dont know if running them spontaneously gives you any real advantage. I do that just when I want my CPU temperature as high as it gets (burning).
 
Back
Top