why vastly different cpu utilizations on GPUs?

JStateson
JStateson
Joined: 7 May 07
Posts: 69
Credit: 545,990,547
RAC: 309,338
Topic 217483

Have noticed that ATI tasks generally requires much less CPU utilization than nVidia.  Is it the type of GPU or maybe the type of CPU ???

Both systems below are ubuntu.

My core 2 quad with RX570 easily handles total of 8 SETI or Einstein using 0.25 for both cpu and gpu.  Note they are running just over %6.

RX570 einstein performance

On the other hand, my xeon 16 core E6520 requires a full cpu for a single Einstein task with pair GTX-670s. Note they are running at 99%

 

Einstein usage on xeon with nvidia

archae86
archae86
Joined: 6 Dec 05
Posts: 2,673
Credit: 2,346,514,973
RAC: 2,992,749

Not an inherent property of

Not an inherent property of the GPU, but a result of the communication protocol adopted by which the task on the GPU requests CPU services.

The current Nvidia Einstein GRP code built on openCL is said to use a polling loop.  The CPU continuously asks "do you want something?".  This means that if the support thread is running nearly all the time, the requests get serviced rapidly without interrupt overhead, but that thread burns power and usurps computation capability from other things.

We have had Einstein Nvidia executables built on a CUDA base.  I presume these use interrupts as the means for the GPU to request CPU service, so there is no case for the support task to run all the time.  I assume that is true of the current AMD code here.

Now, there may well be actual differences in useful support work that needs to be carried out between the two architectures, but for now, any of that is swamped by the attention-getting mechanism.

I hope anyone who can correct these assertions will chime in.

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.