From: Con Kolivas <kernel@kolivas.org>
To: Andreas Mohr <andi@rhlx01.fht-esslingen.de>
Cc: Andrew Morton <akpm@osdl.org>,
ck@vds.kolivas.org, linux-mm@kvack.org,
linux-kernel@vger.kernel.org
Subject: Re: [ck] Re: [PATCH] mm: yield during swap prefetching
Date: Wed, 8 Mar 2006 19:52:42 +1100 [thread overview]
Message-ID: <200603081952.42853.kernel@kolivas.org> (raw)
In-Reply-To: <20060308084824.GA4193@rhlx01.fht-esslingen.de>
On Wednesday 08 March 2006 19:48, Andreas Mohr wrote:
> Hi,
>
> On Tue, Mar 07, 2006 at 03:26:36PM -0800, Andrew Morton wrote:
> > Con Kolivas <kernel@kolivas.org> wrote:
> > > Swap prefetching doesn't use very much cpu but spends a lot of time
> > > waiting on disk in uninterruptible sleep. This means it won't get
> > > preempted often even at a low nice level since it is seen as sleeping
> > > most of the time. We want to minimise its cpu impact so yield where
> > > possible.
> >
> > yield() really sucks if there are a lot of runnable tasks. And the
> > amount of CPU which that thread uses isn't likely to matter anyway.
> >
> > I think it'd be better to just not do this. Perhaps alter the thread's
> > static priority instead? Does the scheduler have a knob which can be
> > used to disable a tasks's dynamic priority boost heuristic?
>
> This problem occurs due to giving a priority boost to processes that are
> sleeping a lot (e.g. in this case, I/O, from disk), right?
> Forgive me my possibly less insightful comments, but maybe instead of
> adding crude specific hacks (namely, yield()) to each specific problematic
> process as it comes along (it just happens to be the swap prefetch thread
> this time) there is a *general way* to give processes with lots of disk I/O
> sleeping much smaller amounts of boost in order to get them preempted more
> often in favour of an actually much more critical process (game)?
>
> >From the discussion here it seems this problem is caused by a *general*
>
> miscalculation of processes sleeping on disk I/O a lot.
>
> Thus IMHO this problem should be solved in a general way if at all
> possible.
No. We already do special things for tasks waiting on uninterruptible sleep.
This is more about what is exaggerated on a dual array expiring scheduler
design that mainline has.
Cheers,
Con
WARNING: multiple messages have this Message-ID (diff)
From: Con Kolivas <kernel@kolivas.org>
To: Andreas Mohr <andi@rhlx01.fht-esslingen.de>
Cc: Andrew Morton <akpm@osdl.org>,
ck@vds.kolivas.org, linux-mm@kvack.org,
linux-kernel@vger.kernel.org
Subject: Re: [ck] Re: [PATCH] mm: yield during swap prefetching
Date: Wed, 8 Mar 2006 19:52:42 +1100 [thread overview]
Message-ID: <200603081952.42853.kernel@kolivas.org> (raw)
In-Reply-To: <20060308084824.GA4193@rhlx01.fht-esslingen.de>
On Wednesday 08 March 2006 19:48, Andreas Mohr wrote:
> Hi,
>
> On Tue, Mar 07, 2006 at 03:26:36PM -0800, Andrew Morton wrote:
> > Con Kolivas <kernel@kolivas.org> wrote:
> > > Swap prefetching doesn't use very much cpu but spends a lot of time
> > > waiting on disk in uninterruptible sleep. This means it won't get
> > > preempted often even at a low nice level since it is seen as sleeping
> > > most of the time. We want to minimise its cpu impact so yield where
> > > possible.
> >
> > yield() really sucks if there are a lot of runnable tasks. And the
> > amount of CPU which that thread uses isn't likely to matter anyway.
> >
> > I think it'd be better to just not do this. Perhaps alter the thread's
> > static priority instead? Does the scheduler have a knob which can be
> > used to disable a tasks's dynamic priority boost heuristic?
>
> This problem occurs due to giving a priority boost to processes that are
> sleeping a lot (e.g. in this case, I/O, from disk), right?
> Forgive me my possibly less insightful comments, but maybe instead of
> adding crude specific hacks (namely, yield()) to each specific problematic
> process as it comes along (it just happens to be the swap prefetch thread
> this time) there is a *general way* to give processes with lots of disk I/O
> sleeping much smaller amounts of boost in order to get them preempted more
> often in favour of an actually much more critical process (game)?
>
> >From the discussion here it seems this problem is caused by a *general*
>
> miscalculation of processes sleeping on disk I/O a lot.
>
> Thus IMHO this problem should be solved in a general way if at all
> possible.
No. We already do special things for tasks waiting on uninterruptible sleep.
This is more about what is exaggerated on a dual array expiring scheduler
design that mainline has.
Cheers,
Con
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2006-03-08 8:53 UTC|newest]
Thread overview: 148+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-07 23:13 [PATCH] mm: yield during swap prefetching Con Kolivas
2006-03-07 23:13 ` Con Kolivas
2006-03-07 23:26 ` Andrew Morton
2006-03-07 23:26 ` Andrew Morton
2006-03-07 23:32 ` Con Kolivas
2006-03-07 23:32 ` Con Kolivas
2006-03-08 0:05 ` Andrew Morton
2006-03-08 0:05 ` Andrew Morton
2006-03-08 0:51 ` Con Kolivas
2006-03-08 0:51 ` Con Kolivas
2006-03-08 1:11 ` Andrew Morton
2006-03-08 1:11 ` Andrew Morton
2006-03-08 1:12 ` Con Kolivas
2006-03-08 1:12 ` Con Kolivas
2006-03-08 1:19 ` Con Kolivas
2006-03-08 1:19 ` Con Kolivas
2006-03-08 1:23 ` Andrew Morton
2006-03-08 1:23 ` Andrew Morton
2006-03-08 1:28 ` Con Kolivas
2006-03-08 1:28 ` Con Kolivas
2006-03-08 2:08 ` Lee Revell
2006-03-08 2:08 ` Lee Revell
2006-03-08 2:12 ` Con Kolivas
2006-03-08 2:12 ` Con Kolivas
2006-03-08 2:18 ` Lee Revell
2006-03-08 2:18 ` Lee Revell
2006-03-08 2:22 ` Con Kolivas
2006-03-08 2:22 ` Con Kolivas
2006-03-08 2:27 ` Lee Revell
2006-03-08 2:27 ` Lee Revell
2006-03-08 2:30 ` Con Kolivas
2006-03-08 2:30 ` Con Kolivas
2006-03-08 2:52 ` [ck] " André Goddard Rosa
2006-03-08 2:52 ` André Goddard Rosa
2006-03-08 3:03 ` Lee Revell
2006-03-08 3:03 ` Lee Revell
2006-03-08 3:05 ` Con Kolivas
2006-03-08 21:07 ` Zan Lynx
2006-03-08 23:00 ` Con Kolivas
2006-03-08 23:48 ` Zan Lynx
2006-03-09 0:07 ` Con Kolivas
2006-03-09 3:13 ` Zan Lynx
2006-03-09 4:08 ` Con Kolivas
2006-03-09 4:54 ` Lee Revell
2006-03-09 4:54 ` Lee Revell
2006-03-08 7:51 ` Jan Knutar
2006-03-08 7:51 ` Jan Knutar
2006-03-08 8:39 ` Con Kolivas
2006-03-08 8:39 ` Con Kolivas
2006-03-09 8:57 ` Helge Hafting
2006-03-09 8:57 ` Helge Hafting
2006-03-09 9:08 ` Con Kolivas
2006-03-09 9:08 ` Con Kolivas
2006-03-09 22:44 ` Peter Williams
2006-03-10 9:01 ` [ck] " Andreas Mohr
2006-03-10 9:01 ` Andreas Mohr
2006-03-10 9:11 ` Con Kolivas
2006-03-10 9:11 ` Con Kolivas
2006-03-10 0:58 ` Peter Williams
2006-03-08 22:24 ` Pavel Machek
2006-03-08 22:24 ` Pavel Machek
2006-03-09 2:22 ` Nick Piggin
2006-03-09 2:22 ` Nick Piggin
2006-03-09 2:30 ` Con Kolivas
2006-03-09 2:30 ` Con Kolivas
2006-03-09 2:57 ` Nick Piggin
2006-03-09 2:57 ` Nick Piggin
2006-03-09 9:11 ` Con Kolivas
2006-03-09 9:11 ` Con Kolivas
2006-03-08 13:36 ` [ck] " Con Kolivas
2006-03-08 13:36 ` Con Kolivas
2006-03-17 9:06 ` Ingo Molnar
2006-03-17 9:06 ` Ingo Molnar
2006-03-17 10:46 ` interactive task starvation Mike Galbraith
2006-03-17 17:15 ` Mike Galbraith
2006-03-20 7:09 ` Mike Galbraith
2006-03-20 10:22 ` Ingo Molnar
2006-03-21 6:47 ` Willy Tarreau
2006-03-21 7:51 ` Mike Galbraith
2006-03-21 9:13 ` Willy Tarreau
2006-03-21 9:14 ` Ingo Molnar
2006-03-21 11:15 ` Willy Tarreau
2006-03-21 11:18 ` Ingo Molnar
2006-03-21 11:53 ` Con Kolivas
2006-03-21 13:10 ` Mike Galbraith
2006-03-21 13:13 ` Con Kolivas
2006-03-21 13:33 ` Mike Galbraith
2006-03-21 13:37 ` Con Kolivas
2006-03-21 13:44 ` Willy Tarreau
2006-03-21 13:45 ` Con Kolivas
2006-03-21 14:01 ` Mike Galbraith
2006-03-21 14:17 ` Con Kolivas
2006-03-21 15:20 ` Con Kolivas
2006-03-21 17:50 ` Willy Tarreau
2006-03-22 4:18 ` Mike Galbraith
2006-03-21 17:51 ` Mike Galbraith
2006-03-21 13:38 ` Willy Tarreau
2006-03-21 13:48 ` Mike Galbraith
2006-03-21 12:07 ` Mike Galbraith
2006-03-21 12:59 ` Willy Tarreau
2006-03-21 13:24 ` Mike Galbraith
2006-03-21 13:53 ` Con Kolivas
2006-03-21 14:17 ` Mike Galbraith
2006-03-21 14:19 ` Con Kolivas
2006-03-21 14:25 ` Ingo Molnar
2006-03-21 14:28 ` Con Kolivas
2006-03-21 14:30 ` Ingo Molnar
2006-03-21 14:28 ` Mike Galbraith
2006-03-21 14:30 ` Con Kolivas
2006-03-21 14:32 ` Ingo Molnar
2006-03-21 14:44 ` Willy Tarreau
2006-03-21 14:52 ` Ingo Molnar
2006-03-29 3:01 ` Lee Revell
2006-03-29 5:56 ` Ray Lee
2006-03-29 6:16 ` Lee Revell
2006-03-21 14:36 ` Mike Galbraith
2006-03-21 14:39 ` Con Kolivas
2006-03-21 14:39 ` Willy Tarreau
2006-03-21 18:39 ` Rafael J. Wysocki
2006-03-21 19:32 ` Willy Tarreau
2006-03-21 21:47 ` Rafael J. Wysocki
2006-03-21 22:51 ` Peter Williams
2006-03-22 3:49 ` Mike Galbraith
2006-03-22 3:59 ` Peter Williams
2006-03-22 12:14 ` [interbench numbers] " Mike Galbraith
2006-03-22 20:27 ` Con Kolivas
2006-03-23 3:22 ` Mike Galbraith
2006-03-23 5:43 ` Con Kolivas
2006-03-23 5:53 ` Mike Galbraith
2006-03-23 11:07 ` Mike Galbraith
2006-03-24 0:21 ` Con Kolivas
2006-03-24 5:02 ` Mike Galbraith
2006-03-24 5:04 ` Con Kolivas
2006-03-17 12:38 ` [PATCH] sched: activate SCHED BATCH expired Con Kolivas
2006-03-17 13:07 ` Ingo Molnar
2006-03-17 13:26 ` Nick Piggin
2006-03-17 13:36 ` Con Kolivas
2006-03-17 13:46 ` Nick Piggin
2006-03-17 13:51 ` Nick Piggin
2006-03-17 14:11 ` Con Kolivas
2006-03-17 14:59 ` Ingo Molnar
2006-03-17 13:47 ` [ck] " Andreas Mohr
2006-03-17 13:59 ` Con Kolivas
2006-03-17 14:06 ` Nick Piggin
2006-03-08 8:48 ` [ck] Re: [PATCH] mm: yield during swap prefetching Andreas Mohr
2006-03-08 8:48 ` Andreas Mohr
2006-03-08 8:52 ` Con Kolivas [this message]
2006-03-08 8:52 ` Con Kolivas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200603081952.42853.kernel@kolivas.org \
--to=kernel@kolivas.org \
--cc=akpm@osdl.org \
--cc=andi@rhlx01.fht-esslingen.de \
--cc=ck@vds.kolivas.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.