On Wed, May 02, 2007 at 11:06:34PM +0530, Srivatsa Vaddagiri wrote:
There is also p->wait_runtime which is taken into account when
calculating p->fair_key. So if p3 had waiting in runqueue for long
before, it can get to run quicker than 10ms later.
Virtual time is time from the task's point of view, which it has spent
executing. ->wait_runtime is a device to subtract out time spent on the
runqueue but not running from what would otherwise be virtual time to
express lag, whether deliberately or coincidentally. ->wait_runtime
would not be useful for EEVDF AFAICT, though it may be interesting to
report.
I just want to point out that ->wait_runtime, in fact, stores the lag of
each task in CFS, except that it is also used by other things, and
occasionally tweaked (heuristically ?). Under normal cases the sum of
lags of all active tasks in such a system, should be a constant 0. The
lag information is equally important to EEVDF, when some tasks leave the
system (becomes inactive) carrying certain amount of lag. The key point
here is that we have to spread the lag (either negative or positive) to
all remaining task, so that the fairness of the system is preserved. I
thinks CFS implementation does not seems to handle this properly.
I am running out time today :-( I will write an email about CFS -v8
tomorrow, describing 2 issues in CFS I found related to this.
Ting
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]