From: george anzinger <george@mvista.com>
To: Andrew Morton <andrewm@uow.edu.au>
Cc: nigel@nrg.org, "David S. Miller" <davem@redhat.com>,
linux-kernel@vger.kernel.org,
linux-audio-dev@ginette.musique.umontreal.ca
Subject: Re: [linux-audio-dev] low-latency scheduling patch for 2.4.0
Date: Fri, 12 Jan 2001 15:08:00 -0800 [thread overview]
Message-ID: <3A5F8E50.6720DF5E@mvista.com> (raw)
In-Reply-To: <200101110519.VAA02784@pizda.ninka.net> <Pine.LNX.4.05.10101111233241.5936-100000@cosmic.nrg.org> <3A5F0706.6A8A8141@uow.edu.au>
Andrew Morton wrote:
>
> Nigel Gamble wrote:
> >
> > Spinlocks should not be held for lots of time. This adversely affects
> > SMP scalability as well as latency. That's why MontaVista's kernel
> > preemption patch uses sleeping mutex locks instead of spinlocks for the
> > long held locks.
>
> Nigel,
>
> what worries me about this is the Apache-flock-serialisation saga.
>
> Back in -test8, kumon@fujitsu demonstrated that changing this:
>
> lock_kernel()
> down(sem)
> <stuff>
> up(sem)
> unlock_kernel()
>
> into this:
>
> down(sem)
> <stuff>
> up(sem)
>
> had the effect of *decreasing* Apache's maximum connection rate
> on an 8-way from ~5,000 connections/sec to ~2,000 conn/sec.
>
> That's downright scary.
>
> Obviously, <stuff> was very quick, and the CPUs were passing through
> this section at a great rate.
If <stuff> was that fast, maybe the down/up should have been a spinlock
too. But what if it is changed to:
BKL_enter_mutx()
down(sem)
<stuff>
up(sem)
BKL_exit_mutex()
>
> How can we be sure that converting spinlocks to semaphores
> won't do the same thing? Perhaps for workloads which we
> aren't testing?
The key is to keep the fast stuff on the spinlock and the slow stuff on
the mutex. Otherwise you WILL eat up the cpu with the overhead.
>
> So this needs to be done with caution.
>
> As davem points out, now we know where the problems are
> occurring, a good next step is to redesign some of those
> parts of the VM and buffercache. I don't think this will
> be too hard, but they have to *want* to change :)
They will *want* to change if they pop up due to other work :)
>
> Some of those algorithms are approximately O(N^2), for huge
> values of N.
>
> -
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> Please read the FAQ at http://www.tux.org/lkml/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2001-01-12 23:12 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-01-07 2:53 low-latency scheduling patch for 2.4.0 Andrew Morton
2001-01-11 3:12 ` [linux-audio-dev] " Jay Ts
2001-01-11 3:22 ` Cort Dougan
2001-01-11 12:38 ` Alan Cox
2001-01-11 11:30 ` Andrew Morton
2001-01-11 5:19 ` David S. Miller
2001-01-11 13:57 ` Daniel Phillips
2001-01-11 20:55 ` Nigel Gamble
2001-01-11 21:31 ` David S. Miller
2001-01-15 5:27 ` george anzinger
2001-01-12 13:30 ` Andrew Morton
2001-01-12 15:11 ` Tim Wright
2001-01-12 22:30 ` Nigel Gamble
2001-01-13 1:01 ` Andrew Morton
2001-01-15 19:46 ` Tim Wright
2001-01-12 22:46 ` Nigel Gamble
2001-01-12 23:08 ` george anzinger [this message]
2001-01-21 0:05 ` yodaiken
2001-01-22 0:54 ` Nigel Gamble
2001-01-22 1:49 ` Paul Barton-Davis
2001-01-22 2:21 ` Nigel Gamble
2001-01-22 3:31 ` J Sloan
2001-01-28 13:14 ` yodaiken
2001-01-28 14:07 ` Bill Huey
2001-01-28 14:26 ` Andrew Morton
2001-01-29 5:02 ` yodaiken
2001-01-28 14:19 ` Andrew Morton
2001-01-28 16:17 ` Joe deBlaquiere
2001-01-29 15:44 ` yodaiken
2001-01-29 17:23 ` Joe deBlaquiere
2001-01-29 17:38 ` yodaiken
2001-01-29 18:03 ` Joe deBlaquiere
2001-01-30 15:08 ` David Woodhouse
2001-01-30 15:44 ` Joe deBlaquiere
2001-01-30 16:29 ` Paul Davis
2001-01-30 16:35 ` David Woodhouse
2001-01-31 7:55 ` george anzinger
2001-01-30 16:19 ` David Woodhouse
2001-02-01 12:40 ` Pavel Machek
2001-02-01 22:33 ` David Woodhouse
2001-02-02 4:17 ` Joe deBlaquiere
2001-01-30 20:51 ` yodaiken
2001-01-30 21:00 ` David Woodhouse
2001-01-29 22:08 ` Pavel Machek
2001-01-29 22:31 ` Roger Larsson
2001-01-29 23:46 ` Joe deBlaquiere
2001-01-30 15:08 ` David Woodhouse
2001-01-12 13:21 ` Andrew Morton
2001-01-13 2:45 ` Jay Ts
2001-01-21 0:10 ` yodaiken
2001-01-26 9:14 ` Pavel Machek
2001-01-13 18:11 ` video drivers hog pci bus ? [was:[linux-audio-dev] low-latency scheduling patch for 2.4.0] Jörn Nettingsmeier
2001-01-14 11:35 ` low-latency scheduling patch for 2.4.0 Andrew Morton
2001-01-14 14:38 ` Gregory Maxwell
2001-01-15 10:59 ` Andrew Morton
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=3A5F8E50.6720DF5E@mvista.com \
--to=george@mvista.com \
--cc=andrewm@uow.edu.au \
--cc=davem@redhat.com \
--cc=linux-audio-dev@ginette.musique.umontreal.ca \
--cc=linux-kernel@vger.kernel.org \
--cc=nigel@nrg.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.