Messages in this thread | | | Date | Tue, 05 Aug 2003 12:11:02 +1000 | From | Nick Piggin <> | Subject | Re: [PATCH] O13int for interactivity |
| |
Con Kolivas wrote:
>Changes: > >Reverted the child penalty to 95 as new changes help this from hurting > >Changed the logic behind loss of interactive credits to those that burn off >all their sleep_avg > >Now all tasks get proportionately more sleep as their relative bonus drops >off. This has the effect of detecting a change from a cpu burner to an >interactive task more rapidly as in O10. > >The _major_ change in this patch is that tasks on uninterruptible sleep do not >earn any sleep avg during that sleep; it is not voluntary sleep so they should >not get it. This has the effect of stopping cpu hogs from gaining dynamic >priority during periods of heavy I/O. Very good for the jerks you may >see in X or audio skips when you start a whole swag of disk intensive cpu hogs >(eg make -j large number). I've simply dropped all their sleep_avg, but >weighting it may be more appropriate. This has the side effect that pure >disk tasks (eg cp) have relatively low priority which is why weighting may >be better. We shall see. >
I don't think this is a good idea. Uninterruptible does not mean its not a voluntary sleep. Its more to do with how a syscall is implemented. I don't think it should be treated any differently to any other type of sleep.
Any task which calls schedule in kernel context is sleeping volintarily - if implicity due to having called a blocking syscall.
> >Please test this one extensively. It should _not_ affect I/O throughput per >se, but I'd like to see some of the I/O benchmarks on this. I do not want to >have detrimental effects elsewhere. >
Well the reason it can affect IO thoughput is for example when there is an IO bound process and a CPU hog on the same processor: the longer the IO process has to wait (after being woken) before being run, the more chance the disk will fall idle for a longer period. And of course the CPU uncontended case is somewhat uninteresting when it comes to a CPU scheduler.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |