...
kano,
intensity has an even bigger influence than CPU speed, at intensity 'd', same 800 MHz CPU speed, cgminer uses around 50% CPU time
spiccioli
Actually - logically as the intensity drops, the CPU must increase.
When the intensity goes down, it means the work is broken up into smaller pieces.
More pieces means more CPU processing and transferring for the same amount of hashes.
I run 2x6950 on a 3.07GHz i3 CPU running at 1.2GHz and -I 9 and get ~2% CPU (hmm 2 seems low - I would have guessed 5 ...)
(that % number means of a single core in linux coz if you e.g. have 2 cores - total is CPU 200%)
So it's not totally surprising getting high CPU use with 5 GPU's and low power CPU and lower intensity.
kano,
with lower intensity occupation of GPU is lower, so I was thinking that the thread serving a GPU with lower intensity had to be sleeping a lot more, while it is, instead, sleeping a lot less.
73.0 C F: 24% (1335 RPM) E: 800 MHz M: 150 Mhz V: 1.000V A: 80% P: 0%
Last initialised: [2012-02-26 23:06:14]
Intensity: Dynamic (only one thread in use)
Thread 1: 299.8 Mh/s Enabled ALIVE
How many more hashes (or how longer does it keep counting) are counted by a GPU when intensity is increased by one?
spiccioli.
Yes the CPU is sleeping a lot less with lower intensity as I said here:
When the intensity goes down, it means the work is broken up into smaller pieces.
More pieces means more CPU processing and transferring for the same amount of hashes.
I'll explain again I guess:
A work request is 2^32 hashes (a full nonce range)
It maybe could be done in 1 one long go or 2^32 tiny goes.
It is actually, of course, done somewhere in the middle of that.
kano goes read the code to try get the numbers ...
OK it looks like (though I could be wrong) that with intensity 9 it divides the work into pieces of (2^(15+9) * vectors) hashes
So about 16 million hashes with -v 1 (there are other limitations it does to this number but it looks like that's maybe correct for me with -I 9)
This figure doesn't really matter if it's wrong, but how I've described how it works is correct.
Anyway assuming it is (2^(15+9)) or 16 million - it takes about 52ms for a single 6950 GPU to do that.
Thus every 52ms (if I had only one 6950) the CPU needs to setup and feed data into the GPU and then wait about 52ms to get the answer back, then setup the next 16 million hashes and feed them into the GPU ... over and again ... until it's processed the whole 2^32 hashes
If instead the intensity was 8, each setup would contain half the number of hashes (2^(15+8)) or 8 million, or approx 26ms so the CPU would have to setup work twice as often to complete the whole 2^32 nonce range - thus the CPU usage would increase since it's doing twice as many setups for the same amount of work - to do the complete 2^32 hashes