All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@zip.com.au>
To: george anzinger <george@mvista.com>
Cc: "Andrea Arcangeli" <andrea@suse.de>,
	"Robert Love" <rml@tech9.net>,
	"Dieter Nützel" <Dieter.Nuetzel@hamburg.de>,
	"Chris Mason" <mason@suse.com>,
	"Beau Kuiper" <kuib-kl@ljbc.wa.edu.au>,
	"Linux Kernel List" <linux-kernel@vger.kernel.org>,
	"ReiserFS List" <reiserfs-list@namesys.com>
Subject: Re: [PATCH] Significant performace improvements on reiserfs systems
Date: Thu, 20 Sep 2001 18:20:32 -0700	[thread overview]
Message-ID: <3BAA95E0.5BEB8990@zip.com.au> (raw)
In-Reply-To: <20010920170812.CCCACE641B@ns1.suse.com> <3BAA29C2.A9718F49@zip.com.au> <1001019170.6090.134.camel@phantasy> <200109202112.f8KLCXG16849@zero.tech9.net> <1001024694.6048.246.camel@phantasy> <20010921003742.I729@athlon.random> <1001026597.6048.278.camel@phantasy> <20010921011514.M729@athlon.random> <3BAA8BDA.5EED2879@mvista.com>

george anzinger wrote:
> 
> ...
> Actually, I rather think that the problem is lock granularity.  These
> issues are present in the SMP systems as well.  A good solution would be
> one that shortened the spinlock time.  No horrid preempt code, just
> tight fast code.
> 

This may not be practical.

Take, for example, zap_page_range().   It simply has a lot
of work to do, and it does it inside a spinlock.  By doing
it in a tight loop, it's optimal.

There is no way to speed this function up by two or three orders
of magnitude.  (Well, there is: don't take the lock at all if
the mm isn't shared, but this is merely an example.  There are
other instances).

It seems that for a preemptive kernel to be successful, we need
to globally alter the kernel so that it never holds locks for
more than 500 microseconds.  Which is what the conditional_schedule()
(aka cooperative multitasking :)) patches do.

It seems that there are no magic bullets, and low latency will
forever have a global impact on kernel design, unless a way is
found to reschedule with locks held.  I recall that a large
part of the MontaVista patch involved turning spinlocks into
semaphores, yes?  That would seem to be the way to go.

  reply	other threads:[~2001-09-21  1:20 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20010920170812.CCCACE641B@ns1.suse.com>
2001-09-20 17:19 ` [PATCH] Significant performace improvements on reiserfs systems Chris Mason
2001-09-20 17:39   ` Andrew Morton
2001-09-20 20:52     ` Robert Love
2001-09-20 21:11       ` Dieter Nützel
     [not found]       ` <200109202112.f8KLCXG16849@zero.tech9.net>
2001-09-20 22:24         ` Robert Love
2001-09-20 22:37           ` Andrea Arcangeli
2001-09-20 22:56             ` Robert Love
2001-09-20 23:15               ` Andrea Arcangeli
2001-09-20 23:41                 ` Robert Love
2001-09-21  0:37                 ` george anzinger
2001-09-21  1:20                   ` Andrew Morton [this message]
2001-09-21  3:14                     ` Robert Love
2001-09-21  9:32                     ` [reiserfs-list] " Nikita Danilov
2001-09-21 12:18                       ` Alan Cox
2001-09-21 12:31                         ` Nikita Danilov
2001-09-23 23:49                         ` Rusty Russell
2001-09-20 18:47   ` Andrea Arcangeli
2001-09-20 18:58     ` Andrew Morton
2001-09-20 19:13       ` Andrea Arcangeli
     [not found] <200109201708.f8KH8sG15617@zero.tech9.net>
2001-09-20 20:48 ` Robert Love
2001-09-20 17:08 Dieter Nützel

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=3BAA95E0.5BEB8990@zip.com.au \
    --to=akpm@zip.com.au \
    --cc=Dieter.Nuetzel@hamburg.de \
    --cc=andrea@suse.de \
    --cc=george@mvista.com \
    --cc=kuib-kl@ljbc.wa.edu.au \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mason@suse.com \
    --cc=reiserfs-list@namesys.com \
    --cc=rml@tech9.net \
    /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.