Re: [RFC][PATCH] O(1) Entitlement Based Scheduler

From: Peter Williams
Date: Thu Feb 26 2004 - 17:54:46 EST


Timothy Miller wrote:
How about this:

The kernel tracks CPU usage, time slice expiration, and numerous other statistics, and exports them to userspace through /proc or somesuch. Then a user-space daemon adjusts priority.

Yes, the right statistics could allow these processes to be identified reasonably accurately. The programs in question would have the following characteristics:

1. low CPU usage rate, and
2. a very regular pattern of use i.e. the size of each CPU bursts would be approximately constant as would the size of the intervals between each burst.

The appropriate statistic to identify the second of these would be variance or (equivalently but more expensively) standard deviation. Whether this problem is bad/important enough to warrant the extra overhead of gathering these statistics is a moot point. We had to generate very high system loads on a single CPU system in order to cause one or two skips in xmms over a period of a couple of minutes.

It should be noted that these are the type of task characteristics for which the real time scheduler classes are designed and I think that someone mentioned that if run with sufficient privileges xmms tries to make itself SCHED_RR.

This could work, but it would be sluggish in adjusting priorities.

I still like Nick and Con's solutions better.


Peter
--
Dr Peter Williams, Chief Scientist peterw@xxxxxxxxxx
Aurema Pty Limited Tel:+61 2 9698 2322
PO Box 305, Strawberry Hills NSW 2012, Australia Fax:+61 2 9699 9174
79 Myrtle Street, Chippendale NSW 2008, Australia http://www.aurema.com

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/