Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S272372AbTHECV2 (ORCPT ); Mon, 4 Aug 2003 22:21:28 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S272373AbTHECV2 (ORCPT ); Mon, 4 Aug 2003 22:21:28 -0400 Received: from dyn-ctb-210-9-244-254.webone.com.au ([210.9.244.254]:25096 "EHLO chimp.local.net") by vger.kernel.org with ESMTP id S272372AbTHECV0 (ORCPT ); Mon, 4 Aug 2003 22:21:26 -0400 Message-ID: <3F2F149F.1020201@cyberone.com.au> Date: Tue, 05 Aug 2003 12:21:19 +1000 From: Nick Piggin User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3.1) Gecko/20030618 Debian/1.3.1-3 X-Accept-Language: en MIME-Version: 1.0 To: Con Kolivas CC: linux kernel mailing list , Andrew Morton , Ingo Molnar , Felipe Alfaro Solana Subject: Re: [PATCH] O13int for interactivity References: <200308050207.18096.kernel@kolivas.org> <3F2F1236.6050900@cyberone.com.au> <200308051220.04779.kernel@kolivas.org> In-Reply-To: <200308051220.04779.kernel@kolivas.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2570 Lines: 65 Con Kolivas wrote: >On Tue, 5 Aug 2003 12:11, Nick Piggin wrote: > >>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. >> > >I've already posted a better solution in O13.1 > > No, this still special-cases the uninterruptible sleep. Why is this needed? What is being worked around? There is probably a way to attack the cause of the problem. - 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/