public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Con Kolivas <kernel@kolivas.org>
To: Helge Hafting <helge.hafting@hist.no>
Cc: linux-kernel@vger.kernel.org
Subject: Re: 2.6.8-rc2-mm2
Date: Thu, 05 Aug 2004 19:34:45 +1000	[thread overview]
Message-ID: <4111FF35.3040002@kolivas.org> (raw)
In-Reply-To: <4111F0FF.7090301@hist.no>

[-- Attachment #1: Type: text/plain, Size: 2813 bytes --]

Helge Hafting wrote:
> Con Kolivas wrote:
> 
>> Ingo Molnar writes:
>>
>>>
>>> * Con Kolivas <kernel@kolivas.org> wrote:
>>>
>>>>
>>>> Can you define them please? I haven't had any reported to me.
>>>
>>>
>>>
>>> sure: take a process that uses 85% of CPU time (and sleeps 15% of the
>>> time) if running on an idle system. Start just two of these hogs at
>>> normal priority. 2.6.8-rc2-mm2 becomes almost instantly unusable even
>>> over a text console: a single 'top' refresh takes ages, 'ls' displays
>>> one line per second or so. Start more of these and the system
>>> effectively locks up.
>>
>>
>>
>> It's only if I physically try and create such a test application that 
>> I can reproduce it. I haven't found any real world load that does that 
>> - but of course that doesn't mean I should discount it. However, 
>> interactive mode off doesn't exhibit it and it should be easy enough 
>> to fix for interactive mode on. Thanks for pointing it out.
> 
> 
> I can easily imagine this sort of real-life application.  Anything that 
> generate real-time data, such as sound or video for immediate playback 
> will use some continous fraction of cpu, depending on how much data and 
> how fast the cpu happens to be.   A scheduler with such
> a problem will now and then cause trouble when some processor needs just 
> the
> "wrong" percentage of its capacity to run the task(s). Consider someone 
> playing several video files until he exceeds the capacity of the 
> machine. Video skipping frames is then ok, a frozen UI is not.  Or 
> consider a multiuser machine running several games.  Or even a parallell 
> kernel compile when the source isn't cached. The compiler(s) will work 
> for a while, wait for disk for a while, work for a while . . .

Your concerns are valid, and are relevant for _any_ scheduler design. 
However none of these occur with staircase. Ingo is describing a special 
case where it runs for more than 1ms and less than 10ms. Most things do 
not run exactly in this manner, which is why you haven't seen it, and 
neither have I till I created his test case.

As for the multiuser machine, this is actually an area where staircase 
_excels_ at when put into non-interactive mode. The fact that 
interactivity is not as good in interactive mode under load in a single 
desktop mode doesn't really describe that interactivity is still 
remarkably good considering how strict the cpu distribution is - and 
that's by design. I have now a couple of users using staircase in 
non-interactive mode sharing resources between up to 10 users happily, 
where previously the mainline 2.6 kernel was unable to do this in a fair 
manner.

> 2.6.8-rc2-mm2 seems to work fine for me right now, but I hope there will 
> be solutions for this sort of problem.

Great.

> Helge Hafting

Cheers,
Con

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 256 bytes --]

  reply	other threads:[~2004-08-05  9:35 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-02  8:55 2.6.8-rc2-mm2 Andrew Morton
2004-08-02  9:23 ` 2.6.8-rc2-mm2 Espen Fjellvær Olsen
2004-08-02 12:10 ` 2.6.8-rc2-mm2 Rik van Riel
2004-08-05 10:56   ` 2.6.8-rc2-mm2 Hideo AOKI
2004-08-05 12:55     ` 2.6.8-rc2-mm2 Hideo AOKI
2004-08-02 13:07 ` 2.6.8-rc2-mm2 Con Kolivas
2004-08-03  6:43   ` 2.6.8-rc2-mm2 Nick Piggin
2004-08-03  7:35     ` 2.6.8-rc2-mm2 Con Kolivas
2004-08-03  7:43       ` 2.6.8-rc2-mm2 Nick Piggin
2004-08-03  7:45       ` 2.6.8-rc2-mm2 Con Kolivas
2004-08-04  8:35         ` 2.6.8-rc2-mm2 Nick Piggin
2004-08-04 10:12           ` 2.6.8-rc2-mm2 Con Kolivas
2004-08-04 10:33             ` 2.6.8-rc2-mm2 Nick Piggin
2004-08-04 11:42               ` 2.6.8-rc2-mm2 bert hubert
2004-08-05  1:21                 ` 2.6.8-rc2-mm2 Nick Piggin
2004-08-04 10:31           ` 2.6.8-rc2-mm2 Ingo Molnar
2004-08-04 10:46             ` 2.6.8-rc2-mm2 Nick Piggin
2004-08-04 10:47             ` 2.6.8-rc2-mm2 Con Kolivas
2004-08-04 12:45               ` 2.6.8-rc2-mm2 Ingo Molnar
2004-08-05  2:53                 ` 2.6.8-rc2-mm2 Con Kolivas
2004-08-05  8:34                   ` 2.6.8-rc2-mm2 Helge Hafting
2004-08-05  9:34                     ` Con Kolivas [this message]
2004-08-05 10:47                   ` 2.6.8-rc2-mm2 Ingo Molnar
2004-08-02 13:52 ` 2.6.8-rc2-mm2 William Lee Irwin III
2004-08-02 16:12   ` 2.6.8-rc2-mm2 William Lee Irwin III
2004-08-02 14:28 ` 2.6.8-rc2-mm2 William Lee Irwin III
2004-08-02 15:31 ` 2.6.8-rc2-mm2 Mark Watts
2004-08-02 15:33   ` 2.6.8-rc2-mm2 Jesper Juhl
2004-08-02 15:38   ` 2.6.8-rc2-mm2 Dominik Karall
2004-08-02 16:02     ` 2.6.8-rc2-mm2 Mark Watts
2004-08-03  6:55   ` 2.6.8-rc2-mm2 Clemens Schwaighofer
2004-08-02 15:57 ` 2.6.8-rc2-mm2 Martin Zwickel
2004-08-02 17:59 ` 2.6.8-rc2-mm2 (compile stats) John Cherry
2004-08-02 18:15 ` 2.6.8-rc2-mm2 Peter Osterlund
2004-08-02 22:16 ` [patch] 2.6.8-rc2-mm2: compile error with SWAP=n Adrian Bunk
2004-08-03  8:27 ` 2.6.8-rc2-mm2 Mark Watts
2004-08-03 13:05   ` 2.6.8-rc2-mm2 R. J. Wysocki
2004-08-03 13:13 ` 2.6.8-rc2-mm2 Con Kolivas
2004-08-03 19:44 ` 2.6.8-rc2-mm2 Adrian Bunk
2004-08-04 16:32 ` 2.6.8-rc2-mm2 Dominik Karall
2004-08-05  4:38 ` [sparc32] [1/13] turbosparc flush warnings William Lee Irwin III
2004-08-05  4:39   ` [sparc32] [2/13] sparc32 init_idle() William Lee Irwin III
2004-08-05  4:41     ` [sparc32] [3/13] sun4d cpu_present_map is a cpumask_t William Lee Irwin III
2004-08-05  4:44       ` [sparc32] [4/13] smp_processor_id() BITFIXUP fixes William Lee Irwin III
2004-08-05  4:46         ` [sparc32] [5/13] reinstate smp_reschedule_irq() William Lee Irwin III
2004-08-05  4:47           ` [sparc32] [6/13] remove references to start_secondary() William Lee Irwin III
2004-08-05  4:48             ` [sparc32] [7/13] remove references to num_context_patch2 William Lee Irwin III
2004-08-05  4:49               ` [sparc32] [8/13] define cache_decay_ticks William Lee Irwin III
2004-08-05  4:54                 ` [sparc32] [9/13] remove unused variable in dvma.c William Lee Irwin III
2004-08-05  4:55                   ` [sparc32] [10/13] sun4 does not support SMP William Lee Irwin III
2004-08-05  4:56                     ` [sparc32] [11/13] make CONFIG_SMP depend on CONFIG_BROKEN William Lee Irwin III
2004-08-05  5:01                       ` [sparc32] [12/13] gcc-3.3 macro parenthesization fix for memcpy.S William Lee Irwin III
2004-08-05  5:31                         ` [sparc32] [13/13] ignore undefined symbols with 3 or more leading underscores William Lee Irwin III
2004-08-05  7:28                         ` [sparc32] [12/13] gcc-3.3 macro parenthesization fix for memcpy.S Jakub Jelinek
2004-08-05  7:38                           ` William Lee Irwin III

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=4111FF35.3040002@kolivas.org \
    --to=kernel@kolivas.org \
    --cc=helge.hafting@hist.no \
    --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