From: Peter Williams <pwil3058@bigpond.net.au>
To: Kyle Moffett <mrmacman_g4@mac.com>
Cc: Horst von Brand <vonbrand@inf.utfsm.cl>,
Trond Myklebust <trond.myklebust@fys.uio.no>,
Ingo Molnar <mingo@elte.hu>, Con Kolivas <kernel@kolivas.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] sched: Fix adverse effects of NFS client on interactive response
Date: Thu, 22 Dec 2005 09:59:10 +1100 [thread overview]
Message-ID: <43A9DE3E.1080809@bigpond.net.au> (raw)
In-Reply-To: <CB5409C3-80FE-4C6B-8E9C-0D3FEECD8384@mac.com>
Kyle Moffett wrote:
> On Dec 21, 2005, at 11:10, Horst von Brand wrote:
>
>> Kyle Moffett <mrmacman_g4@mac.com> wrote:
>>
>>> On Dec 21, 2005, at 08:21, Trond Myklebust wrote:
>>>
>>>> ...and if you stick in a faster server?...
>>>> There is _NO_ fundamental difference between NFS and a local
>>>> filesystem that warrants marking one as "interactive" and the other
>>>> as "noninteractive". What you are basically saying is that all I/O
>>>> should be marked as TASK_NONINTERACTIVE.
>>>
>>>
>>> Uhh, what part of disk/NFS/filesystem access is "interactive"?
>>> Which of those sleeps directly involve responding to user- interface
>>> events?
>>
>>
>> And if it is a user waiting for the data to display? Can't
>> distinguish that so easily from the compiler waiting for something to
>> do...
>
>
> No, but in that case the program probably _already_ has some
> interactivity bonus just from user interaction.
And if it doesn't then it is (by definition) not interactive. :-)
As you imply, this change is targetting those tasks whose ONLY
interruptible sleeps are due to NFS use.
> On the other hand, UI
> programming guidelines say that any task which might take more than a
> half-second or so should not be run in the event loop, but in a
> separate thread (either a drawing thread or similar). In that case,
> your event loop thread is the one with the interactivity bonus, and the
> others are just data processing threads (like the compile you have
> running in the background or the webserver responding to HTTP
> requests), that the user would need to manually arbitrate between with
> nice levels.
>
> The whole point of the interactivity bonus was that processes that
> follow the cycle <waiting-for-input> => <respond-to-input-for-less-
> than-time-quantum> => <waiting-for-input> would get a boost; things
> like dragging a window or handling mouse or keyboard events should
> happen within a small number of milliseconds, whereas background tasks
> really _don't_ care if they are delayed running their time quantum by
> 400ms, as long as they get their full quantum during each cycle.
Exactly. It's all about latency and doesn't really effect the
allocation of CPU resources according to niceness as that is handled via
differential time slice allocations.
Peter
--
Peter Williams pwil3058@bigpond.net.au
"Learning, n. The kind of ignorance distinguishing the studious."
-- Ambrose Bierce
next prev parent reply other threads:[~2005-12-21 22:59 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-21 6:00 Peter Williams
2005-12-21 6:09 ` Trond Myklebust
2005-12-21 6:32 ` Peter Williams
2005-12-21 13:21 ` Trond Myklebust
2005-12-21 13:36 ` Kyle Moffett
2005-12-21 13:40 ` Trond Myklebust
2005-12-22 2:26 ` Peter Williams
2005-12-22 22:08 ` Trond Myklebust
2005-12-22 22:33 ` Peter Williams
2005-12-22 22:59 ` Trond Myklebust
2005-12-23 0:02 ` Kyle Moffett
2005-12-23 0:25 ` Trond Myklebust
2005-12-23 3:06 ` Peter Williams
2005-12-23 9:39 ` Trond Myklebust
2005-12-23 10:49 ` Peter Williams
2005-12-23 12:51 ` Trond Myklebust
2005-12-23 13:36 ` Peter Williams
2006-01-02 12:09 ` Pekka Enberg
2005-12-23 19:07 ` Lee Revell
2005-12-23 21:08 ` Trond Myklebust
2005-12-23 21:17 ` Lee Revell
2005-12-23 21:23 ` Trond Myklebust
2005-12-23 22:04 ` Lee Revell
2005-12-23 22:10 ` Trond Myklebust
2005-12-21 16:10 ` Horst von Brand
2005-12-21 20:36 ` Kyle Moffett
2005-12-21 22:59 ` Peter Williams [this message]
2005-12-21 16:11 ` Ingo Molnar
2005-12-21 22:49 ` Peter Williams
2006-01-02 11:01 ` Helge Hafting
2006-01-02 23:54 ` Peter Williams
2006-01-04 1:25 ` Peter Williams
2006-01-04 9:40 ` Marcelo Tosatti
2006-01-04 12:18 ` Con Kolivas
2006-01-04 10:31 ` Marcelo Tosatti
2006-01-04 21:51 ` Peter Williams
2006-01-05 6:31 ` Mike Galbraith
2006-01-05 11:31 ` Peter Williams
2006-01-05 14:31 ` Mike Galbraith
2006-01-05 23:13 ` Peter Williams
2006-01-05 23:33 ` Con Kolivas
2006-01-06 0:02 ` Peter Williams
2006-01-06 0:08 ` Con Kolivas
2006-01-06 0:40 ` Peter Williams
2006-01-06 7:39 ` Mike Galbraith
2006-01-07 1:11 ` Peter Williams
2006-01-07 5:27 ` Mike Galbraith
2006-01-07 6:34 ` Peter Williams
2006-01-07 8:54 ` Mike Galbraith
2006-01-07 23:40 ` Peter Williams
2006-01-08 5:51 ` Mike Galbraith
2006-01-07 9:30 ` Con Kolivas
2006-01-07 10:23 ` Mike Galbraith
2006-01-07 23:31 ` Peter Williams
2006-01-08 0:38 ` 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=43A9DE3E.1080809@bigpond.net.au \
--to=pwil3058@bigpond.net.au \
--cc=kernel@kolivas.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mrmacman_g4@mac.com \
--cc=trond.myklebust@fys.uio.no \
--cc=vonbrand@inf.utfsm.cl \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®