On Thu, Dec 01, 2011 at 01:23:35PM -0000, Steven Hartland wrote:
> ----- Original Message ----- 
> From: "Damien Fleuriot" <m...@my.gd>
> 
> >> I could understand a bit of overflow as stats are snapshots which may not
> >> be instuntanious, but 31GB instead of under 8GB is hardly a rounding
> >> issue /
> >> overflow.
> >> 
> >> With respect to top showing greater than 100% by how much are you talking?
> >> Do your realise that each core = 100%? So if you have a quad core your
> >> system
> >> total will be 400% not 100%?
> >> 
> > 
> > That's his point, you cannot use 400% of a system as a whole, his point
> > is that top should report 100% where each core accounts for 25%
> 
> Then I would have to disagree, keeping 100% to mean 100% of a single core
> is much easier to manage than 100% of a machines total capacity.
> 
> If you went to 100% = the machine total capacity processes could be using
> a lot of cpu without even registering 1% on today's machines where 24 cores
> is common place.
> 
> It also makes detecting single process / thread bottlenecks easier as if
> your seeing 100% you know its maxing a core, instead of having to calculate
> it once you know how many cores the machine has.
> 
> If your looking for total machine usage then that's also their in the summary
> at the top of the screen e.g.
> CPU states: 13.6% user,  0.0% nice,  1.3% system,  0.0% interrupt, 85.1% idle
> 
> Anyway this is quite off topic, and I don't want to loose sight of the threads
> goal which is to determine why we can see 31GB of usage on an 8GB machine
> with very little shared memory usage an no swap usage.
> 

Just to put some visuals to this...

.
`-- DIE
    |-- Core1           [Idle]
    |-- Core2           [35% ]
    |   `-- thread127
    |-- Core3           [40% ]
    |   `-- thread127
    `-- Core4           [100%]
        `-- thread127

In this case you would say the DIE should be at a total of 175% ?

$(((25*0)+(25*0.35)+(25*0.40)+(25*1.00)))

Out of sanity and each core only being 25% of the total DIE it should be 
reporting. It is using all together 43.75% of the total DIE. But thats not what 
I see even on SP machines. 1 DIE 1 core and a report of 338% usage for 8 
threads of firefox. If someone was attempting to write a scheduler to launch 
processes & yield back to the scheduler to launch more based on processor usage 
either by core or by die totals that scheduler would be ineffective at best 
without alot of kludges put in place to handle all the misinterpretation. 
Somewhere along the line our math has been distorted or the move from SP -> MP, 
cores, hyperthreading etc.. has just not completed yet and should not be 
ignored.

Attachment: pgpqrrUzEGGAL.pgp
Description: PGP signature

Reply via email to