From: Ingo Molnar <mingo@elte.hu>
To: Christoph Hellwig <hch@infradead.org>,
linux-kernel@vger.kernel.org,
Arjan van de Ven <arjanv@redhat.com>
Subject: Re: [announce] [patch] Voluntary Kernel Preemption Patch
Date: Sat, 10 Jul 2004 14:48:14 +0200 [thread overview]
Message-ID: <20040710124814.GA27345@elte.hu> (raw)
In-Reply-To: <20040709195105.GA4807@infradead.org>
* Christoph Hellwig <hch@infradead.org> wrote:
> > unlike the lowlatency patches, this patch doesn't add a lot of new
> > scheduling points to the source code, it rather reuses a rich but
> > currently inactive set of scheduling points that already exist in the
> > 2.6 tree: the might_sleep() debugging checks. Any code point that does
> > might_sleep() is in fact ready to sleep at that point. So the patch
> > activates these debugging checks to be scheduling points. This reduces
> > complexity and impact quite significantly.
>
> I don't think this is a good idea. Just because a function might
> sleep it doesn't mean it should sleep. I'd rather add the
> might_sleep() to cond_resched() and replace the former with the latter
> in the cases where it makes sense.
think of voluntary preemption as a variant of CONFIG_PREEMPT with
different tradeoffs: it doesnt preempt as much code but it's cheaper (in
terms of code footprint and overhead) and less risky (in terms of code
affected).
What you say is equivalent to: 'because a process has higher priority it
doesnt mean it should be scheduled to', which is the wrong approach
because it is ultimately the decision of the user which tasks get
scheduled (by giving processes various priorities) and the decision of
the scheduler (for freely schedulable tasks). The preemption decision
does not depend and should not depend on the kernel function utilized!
if you dont care about latencies and want to maximize throughput (for
e.g. servers) then you dont want to enable CONFIG_PREEMPT_VOLUNTARY.
That way you get artificial batching of parallel workloads.
FYI, i am also preparing a preemption patch where there's a (per-task)
tunable for 'expected maximum latency' and the kernel would measure
latencies and not do a forced preemption unless this latency is being
exceeded.
Voluntary preemption and CONFIG_PREEMPT means this tunable has a value
of 0 - we reschedule as soon as possible. Server workloads mean a much
higher tolerated latency value in the range of 50 msecs or so. Both are
fair expectations and settings.
Ingo
next prev parent reply other threads:[~2004-07-10 12:47 UTC|newest]
Thread overview: 270+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-07-09 18:26 [announce] [patch] Voluntary Kernel Preemption Patch Ingo Molnar
2004-07-09 19:51 ` Christoph Hellwig
2004-07-09 23:50 ` Andrea Arcangeli
2004-07-10 0:52 ` Andrea Arcangeli
2004-07-10 1:02 ` Dave Jones
2004-07-12 10:17 ` Takashi Iwai
2004-07-12 19:36 ` Andrea Arcangeli
2004-07-13 7:43 ` Takashi Iwai
2004-07-10 6:32 ` Arjan van de Ven
2004-07-10 7:57 ` Ingo Molnar
2004-07-10 8:10 ` ismail dönmez
2004-07-10 8:28 ` Ingo Molnar
2004-07-19 10:36 ` [patch] voluntary-preempt 2.6.8-rc2-H4 Ingo Molnar
2004-07-20 1:38 ` Ramón Rey Vicente
2004-07-20 6:02 ` Ingo Molnar
2004-07-10 15:36 ` [announce] [patch] Voluntary Kernel Preemption Patch Andrea Arcangeli
2004-07-10 12:48 ` Ingo Molnar [this message]
2004-07-10 15:12 ` Con Kolivas
2004-07-10 15:14 ` Arjan van de Ven
2004-07-10 15:18 ` Con Kolivas
2004-07-11 7:07 ` Zwane Mwaikambo
2004-07-11 7:09 ` Con Kolivas
2004-07-11 7:16 ` [announce] [patch] " Zwane Mwaikambo
2004-07-11 9:18 ` Ingo Molnar
2004-07-11 9:29 ` Con Kolivas
2004-07-10 16:18 ` [announce] [patch] " Con Kolivas
2004-07-11 6:47 ` [ck] " Ingo Molnar
2004-07-11 6:59 ` Con Kolivas
2004-07-11 11:18 ` R. J. Wysocki
2004-07-11 7:09 ` [ck] Re: [announce] [patch] " Zwane Mwaikambo
2004-07-11 14:27 ` Con Kolivas
2004-07-11 14:29 ` Con Kolivas
2004-07-11 14:38 ` Ingo Molnar
2004-07-11 17:29 ` André Goddard Rosa
2004-07-11 17:49 ` Grzegorz Kulewski
2004-07-11 21:20 ` Con Kolivas
2004-07-11 21:25 ` Grzegorz Kulewski
2004-07-11 20:17 ` Ingo Molnar
2004-07-12 8:23 ` Voluntary Preemption + concurent games Aivils
2004-07-12 9:51 ` Con Kolivas
2004-07-12 10:45 ` Lenar Lõhmus
2004-07-12 11:52 ` Aivils
2004-07-12 13:35 ` Nick Piggin
2004-07-12 14:15 ` [ck] Re: [announce] [patch] Voluntary Kernel Preemption Patch Chris Friesen
2004-07-12 14:19 ` Ingo Molnar
2004-07-10 15:58 ` Andrea Arcangeli
2004-07-09 21:13 ` Redeeman
2004-07-10 8:02 ` Ingo Molnar
2004-07-10 8:50 ` Ingo Molnar
2004-07-10 10:55 ` ismail dönmez
2004-07-10 11:26 ` Arjan van de Ven
2004-07-10 12:01 ` ismail dönmez
2004-07-10 12:05 ` Arjan van de Ven
2004-07-10 12:09 ` Nick Piggin
2004-07-10 12:35 ` Ingo Molnar
2004-07-10 12:58 ` ismail dönmez
2004-07-10 13:55 ` Ingo Molnar
2004-07-10 14:45 ` Nick Piggin
2004-07-10 14:57 ` ismail dönmez
2004-07-12 10:48 ` Takashi Iwai
2004-07-12 13:09 ` ismail dönmez
2004-07-12 13:14 ` Takashi Iwai
2004-07-09 21:36 ` Torrey Hoffman
2004-07-10 8:23 ` Ingo Molnar
2004-07-10 1:00 ` Con Kolivas
2004-07-10 1:04 ` Dave Jones
2004-07-10 12:55 ` Ingo Molnar
2004-07-11 5:25 ` Andrew Morton
2004-07-11 9:32 ` Ingo Molnar
2004-07-11 9:45 ` Andrew Morton
2004-07-11 9:50 ` Ingo Molnar
2004-07-11 9:58 ` Andrew Morton
2004-07-11 10:30 ` Ingo Molnar
2004-07-11 10:42 ` Andrew Morton
2004-07-11 10:59 ` Arjan van de Ven
2004-07-11 11:13 ` Andrew Morton
2004-07-11 18:07 ` Mikulas Patocka
2004-07-12 7:08 ` Zwane Mwaikambo
2004-07-19 10:20 ` Ingo Molnar
2004-07-11 23:12 ` Robert Love
2004-07-12 22:40 ` Bill Davidsen
2004-07-12 13:24 ` John Stoffel
2004-07-12 22:56 ` [linux-audio-dev] " Lee Revell
2004-07-12 23:31 ` Andrew Morton
2004-07-12 23:58 ` Paul Davis
2004-07-13 0:06 ` Andrew Morton
2004-07-13 0:21 ` Con Kolivas
2004-07-13 1:01 ` [linux-audio-dev] Re: [announce] [patch] " Lee Revell
2004-07-13 7:49 ` Takashi Iwai
2004-07-13 8:12 ` Lee Revell
2004-07-13 0:01 ` Paul Davis
2004-07-13 0:08 ` Andrew Morton
2004-07-13 16:25 ` Andrea Arcangeli
2004-07-13 18:42 ` Lee Revell
2004-07-13 21:29 ` Andrew Morton
2004-07-13 21:45 ` Lee Revell
2004-07-14 8:51 ` Takashi Iwai
2004-07-14 9:36 ` Lee Revell
2004-07-14 10:48 ` Takashi Iwai
2004-07-14 14:52 ` Lee Revell
2004-07-14 16:29 ` Lee Revell
2004-07-14 10:26 ` Benno Senoner
2004-07-13 18:48 ` Andrew Morton
2004-07-13 21:38 ` Andrea Arcangeli
2004-07-13 21:54 ` Andrew Morton
2004-07-13 22:01 ` Andrea Arcangeli
2004-07-13 22:25 ` Andrew Morton
2004-07-13 22:37 ` Andrea Arcangeli
2004-07-13 22:44 ` Andrew Morton
2004-07-13 22:53 ` Andrea Arcangeli
2004-07-13 23:06 ` Andrew Morton
2004-07-13 23:18 ` Andrea Arcangeli
2004-07-13 23:32 ` Andrew Morton
2004-07-14 0:40 ` Andrea Arcangeli
2004-07-14 0:45 ` Andrew Morton
2004-07-19 11:59 ` Ingo Molnar
2004-09-02 22:03 ` Andrea Arcangeli
2004-09-02 22:20 ` Andrew Morton
2004-09-02 23:03 ` Ingo Molnar
2004-09-02 23:21 ` Ingo Molnar
2004-07-13 7:58 ` Takashi Iwai
2004-07-13 0:17 ` Lee Revell
2004-07-13 0:46 ` Andrew Morton
2004-07-13 2:52 ` Lee Revell
2004-07-13 3:59 ` Andrew Morton
2004-07-13 7:57 ` Lee Revell
2004-07-19 10:48 ` Ingo Molnar
2004-07-19 11:34 ` Ingo Molnar
2004-07-20 5:38 ` Lee Revell
2004-07-20 6:12 ` Ingo Molnar
2004-07-20 6:59 ` Lee Revell
2004-07-20 7:11 ` Ingo Molnar
[not found] ` <200407202011.20558.musical_snake@gmx.de>
2004-07-20 19:56 ` Lee Revell
2004-07-20 23:49 ` Benno Senoner
2004-07-21 0:32 ` [linux-audio-dev] " Lee Revell
2004-07-21 1:25 ` Timothy Miller
2004-07-21 21:38 ` Another dumb question about " Timothy Miller
2004-07-24 0:25 ` Lee Revell
2004-07-25 20:19 ` Timothy Miller
2004-07-25 20:13 ` Lee Revell
2004-07-21 10:53 ` [linux-audio-dev] Re: [announce] [patch] " Florian Schmidt
2004-07-21 11:18 ` Thomas Charbonnel
2004-07-21 12:04 ` pci gfx card / jack xruns / pci latencies (was: Re: [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch) Florian Schmidt
2004-07-21 17:49 ` [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch Fernando Pablo Lopez-Lezcano
2004-07-22 22:25 ` Andrew McGregor
2004-07-22 23:16 ` Florian Schmidt
2004-07-21 14:27 ` Benno Senoner
2004-07-20 12:19 ` Jens Axboe
2004-07-20 21:32 ` Lee Revell
2004-07-24 4:07 ` Lee Revell
2004-07-24 5:46 ` Lee Revell
2004-07-24 6:33 ` Lee Revell
2004-07-24 6:43 ` Ingo Molnar
2004-07-24 22:49 ` Lee Revell
2004-07-24 23:30 ` Lee Revell
2004-07-24 11:27 ` max request size 1024KiB by default? Rudo Thomas
2004-07-24 22:58 ` Lee Revell
2004-07-26 19:29 ` Johannes Stezenbach
2004-07-27 5:15 ` Jens Axboe
2004-07-24 12:41 ` [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch Mark Lord
2004-07-24 4:58 ` Lee Revell
2004-07-13 8:31 ` Lee Revell
2004-07-13 8:43 ` Andrew Morton
2004-07-13 8:53 ` Lee Revell
2004-07-13 9:00 ` Andrew Morton
2004-07-13 9:21 ` Takashi Iwai
2004-07-13 9:25 ` Andrew Morton
2004-07-13 9:33 ` Takashi Iwai
2004-07-13 9:44 ` Andrew Morton
2004-07-13 9:23 ` Lee Revell
2004-07-13 9:29 ` Andrew Morton
2004-07-13 20:37 ` Lee Revell
2004-07-13 22:32 ` Lee Revell
2004-07-13 8:07 ` Takashi Iwai
2004-07-13 22:40 ` Bill Davidsen
2004-07-13 23:47 ` Randy.Dunlap
2004-07-19 10:29 ` Ingo Molnar
2004-07-21 3:27 ` Lee Revell
2004-07-21 7:03 ` Andrew Morton
2004-07-21 4:58 ` Lee Revell
2004-07-21 5:30 ` Ingo Molnar
2004-07-21 6:03 ` Lee Revell
2004-07-21 8:22 ` Ingo Molnar
2004-07-21 8:52 ` Ingo Molnar
2004-07-21 11:32 ` Nick Piggin
2004-07-21 15:44 ` Ingo Molnar
2004-07-22 4:56 ` Nick Piggin
2004-07-22 7:07 ` Ingo Molnar
2004-07-22 10:54 ` Nick Piggin
2004-07-22 16:23 ` Ingo Molnar
2004-07-22 22:11 ` Nick Piggin
2004-07-23 5:47 ` Ingo Molnar
2004-07-23 6:45 ` Nick Piggin
2004-07-23 6:55 ` Ingo Molnar
2004-07-23 7:11 ` Nick Piggin
2004-07-23 7:21 ` Ingo Molnar
2004-07-23 7:28 ` Nick Piggin
2004-07-21 18:34 ` Scott Wood
2004-07-21 18:46 ` Ingo Molnar
2004-07-21 19:56 ` Scott Wood
2004-07-21 21:08 ` Ingo Molnar
2004-07-22 2:47 ` Scott Wood
2004-07-21 21:45 ` Ingo Molnar
2004-07-22 2:28 ` Scott Wood
2004-07-22 7:40 ` Ingo Molnar
2004-07-22 18:53 ` Scott Wood
2004-07-22 19:45 ` Bill Huey
2004-07-28 6:45 ` Ingo Molnar
2004-07-28 20:52 ` Scott Wood
2004-07-29 18:21 ` Ingo Molnar
2004-07-29 18:36 ` Bill Huey
2004-07-29 19:17 ` Scott Wood
2004-07-29 19:25 ` Bill Huey
2004-07-30 2:23 ` Eric St-Laurent
2004-07-29 20:26 ` Pavel Machek
2004-07-29 20:57 ` Scott Wood
2004-07-29 21:00 ` Pavel Machek
2004-07-29 21:07 ` Ingo Molnar
2004-07-21 22:52 ` Nick Piggin
2004-07-21 18:32 ` Scott Wood
2004-07-21 20:40 ` Ingo Molnar
2004-07-21 18:30 ` Scott Wood
2004-07-21 18:43 ` Ingo Molnar
2004-07-22 2:32 ` Scott Wood
2004-07-22 9:51 ` Ingo Molnar
2004-07-22 18:36 ` Scott Wood
2004-07-22 19:11 ` Robert Love
2004-07-21 21:00 ` Scott Wood
2004-07-21 21:18 ` Ingo Molnar
2004-07-21 22:14 ` Bill Huey
2004-07-21 22:31 ` Bill Huey
2004-07-21 22:37 ` Scott Wood
2004-07-22 10:06 ` [patch] voluntary-preempt-2.6.8-rc2-H9 Ingo Molnar
2004-07-22 16:00 ` scheduling while atomic (Re: voluntary-preempt-2.6.8-rc2-H9) Rudo Thomas
2004-07-22 16:19 ` Ingo Molnar
2004-07-22 17:24 ` voluntary-preempt I0: sluggish feel Rudo Thomas
2004-07-22 17:52 ` Matt Heler
2004-07-22 17:54 ` Rudo Thomas
2004-07-22 18:01 ` Ingo Molnar
2004-07-22 18:08 ` Ingo Molnar
2004-07-22 18:14 ` Ingo Molnar
2004-07-22 18:37 ` Rudo Thomas
2004-07-23 10:42 ` [patch] voluntary-preempt-2.6.8-rc2-I3 Ingo Molnar
2004-07-23 10:58 ` Paolo Ciarrocchi
2004-07-23 11:04 ` Ingo Molnar
2004-07-23 11:28 ` [patch] voluntary-preempt-2.6.8-rc2-I4 Ingo Molnar
2004-07-24 0:16 ` Lee Revell
2004-07-23 11:42 ` [patch] voluntary-preempt-2.6.8-rc2-I3 Paolo Ciarrocchi
2004-07-23 12:00 ` Ingo Molnar
2004-07-23 15:36 ` Dang, Linh [CAR:2X23:EXCH]
2004-07-23 23:48 ` Thomas Charbonnel
2004-07-26 11:10 ` Ingo Molnar
2004-07-26 12:27 ` Thomas Charbonnel
2004-07-22 18:31 ` voluntary-preempt I0: sluggish feel Robert Love
2004-07-22 18:32 ` Rudo Thomas
2004-07-22 18:38 ` Ingo Molnar
2004-07-22 18:00 ` Ingo Molnar
2004-07-21 6:07 ` [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch Lee Revell
2004-07-21 10:14 ` Roger Luethi
2004-07-13 0:58 ` Jan Depner
2004-07-13 1:00 ` Andrew Morton
2004-07-13 3:31 ` Florin Andrei
2004-07-13 6:31 ` Paul Winkler
2004-07-13 13:26 ` Benno Senoner
2004-07-13 14:50 ` Paul Davis
2004-07-13 19:45 ` Lee Revell
2004-07-13 22:17 ` Bill Davidsen
2004-07-16 4:50 ` Florin Andrei
2004-07-16 12:49 ` Takashi Iwai
2004-07-13 21:53 ` Timothy Miller
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=20040710124814.GA27345@elte.hu \
--to=mingo@elte.hu \
--cc=arjanv@redhat.com \
--cc=hch@infradead.org \
--cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox