All of lore.kernel.org
 help / color / mirror / Atom feed
* decaying average for %CPU
@ 2003-10-17  2:35 Albert Cahalan
  2003-10-17  2:56 ` Nick Piggin
  0 siblings, 1 reply; 6+ messages in thread
From: Albert Cahalan @ 2003-10-17  2:35 UTC (permalink / raw)
  To: linux-kernel mailing list

The UNIX standard requires that Linux provide
some measure of a process's "recent" CPU usage.
Right now, it isn't provided. You might run a
CPU hog for a year, stop it ("kill -STOP 42")
for a few hours, and see that "ps" is still
reporting 99.9% CPU usage. This is because the
kernel does not provide a decaying average.

Another OS uses a fixed-point decaying average,
with this sort of representation:
0x8000 is 100%
0x2000 is 25%
0x0000 is 0%

Anybody have a version of the algorithm that...

* works with traditional 100 HZ ticks
* works with exact (TSC-based) accounting
* lets a thread-group sum to well over 100%
* doesn't require updates to idle processes

???

I'm thinking it would be nice to have the
binary point be between a pair of 32-bit ints.
That might allow for great range w/o doing
lots of "long long" operations, but I haven't
worked out the details.



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2003-10-17 22:48 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-10-17  2:35 decaying average for %CPU Albert Cahalan
2003-10-17  2:56 ` Nick Piggin
2003-10-17  3:00   ` Albert Cahalan
2003-10-17  3:21     ` Nick Piggin
2003-10-17  4:17       ` Albert Cahalan
2003-10-17 22:48         ` Nick Piggin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.