From: Brooks D. <br...@on...> - 2004-05-27 17:05:47
|
On Thu, May 27, 2004 at 09:03:38AM -0700, Martin Knoblauch wrote: >=20 > --- Brooks Davis <br...@on...> wrote: > > On Thu, May 27, 2004 at 08:03:28AM -0700, Martin Knoblauch wrote: > > > Hi, > > >=20 > > > after receiving overwhelming feedback on my request for discussing > > the > > > addition of cpu_wio as a global metric :-) I just went ahead and > > did > > > it. > >=20 > > Arg, apparently I should have read my mail more carefully. What is > > WIO > > and is it something we could expect to be available nearly everwhere? > >=20 >=20 > Linux, prior to 2.6 only reported user/nice/system/idle (actually > idle was all cycles not accounted for). With Linux-2.6 the kernel > reports user/nice/system/idle/wio/irq/softirq.=20 >=20 > wio - cycles spent on waiting for IO > irq - cycles spent on serving hardware interrupts > softirq - cycles spent on serving software interrupts >=20 > So, in any case something has/had to be done for 2.6.x kernels, > otherwise the CPU-stats would not add up to 100%. The alternatives > are/were: >=20 > - add wio explicitely to idle and add irq/softirq to system, as it was > in 2.4 > - export them as separate metrics >=20 > I went ahead and took the second path, because I think those numbers > are interesting/useful. With the spin that irq/softirq are counted > twice. Once as separate metrics (Linux only) and once in the global > system metrics. The reason for counting them inside system is to avoid > breaking the CPU-Report in the webfrontend. The "global" cpu-stats > should add up to 100%. >=20 > I did put wio into the global section, because four major platforms > report it: Linux (kernel 2.6), Solaris, HP-UX and IRIX (although up to > today IRIX only calculated the number, but did not export it). OSF > potentially could do it. The others likely not (not that I am very > impressed with darwin and cygwin on CPU-stat reporting :-). >=20 > Hope this explains my thoughts and action. OK, this makes sense, though I'm not 100% happy with it. It would be nice if we could report a value that indicated "always zero" so the interface could not display it where appropriate in that case. I wonder what, if anything, would break if we returned -0.0. -- Brooks --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 |