01/26/2007 03:09 PM, Kirill Korotaev wrote/a écrit:
Srivatsa,
Current Linux CPU scheduler doesnt recognize process aggregates while
allocating bandwidth. As a result of this, an user could simply spawn large
number of processes and get more bandwidth than others.
Here's a patch that provides fair allocation for all users in a system.
Some benchmark numbers with and without the patch applied follows:
user "vatsa" user "guest"
(make -s -j4 bzImage) (make -s -j20 bzImage)
2.6.20-rc5 472.07s (real) 257.48s (real)
2.6.20-rc5+fairsched 766.74s (real) 766.73s (real)
1. If I interpret these numbers correctly, then your scheduler is not work-conservative,
i.e. 766.74 + 766.73 >> 472.07 + 257.48
why does it slow down users so much?
You can't measure work-conservation by summing! Everything is ran
_concurrently_. A proof of losing computing power is to show
"MAX(new_algorithm execution_times) > MAX(old_algorithm
execution_times)". Anyway... it still seems lots of power is lost:
MAX(766,766) >> MAX(472,257).
Actually, I'd be very interested by a "fairness number" and believe so
far no one as proposed such thing. Probably needs to take into account
the loss of CPU power and the variance of execution time in between the
sets of tasks which are supposed to be fair.
2. compilation of kernel is quite CPU-bound task. So it's not that hard to be fair :)
Can you please try some other applications?
e.g. pipe-based context switching, java Volano benchmark etc.
Another worthy benchmark would be :
(make -s -j4 bzImage) vs (nice make -s -j20 bzImage)
^^^^
Regards,
Eric
-
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]