linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "David S. Miller" <davem@redhat.com>
To: wagnerjd@prodigy.net
Cc: robm@fastmail.fm, hahn@physics.mcmaster.ca,
	linux-kernel@vger.kernel.org, jhoward@fastmail.fm
Subject: Re: Strange load spikes on 2.4.19 kernel
Date: Sun, 13 Oct 2002 01:45:17 -0700 (PDT)	[thread overview]
Message-ID: <20021013.014517.51702915.davem@redhat.com> (raw)
In-Reply-To: <000f01c27294$438d5fa0$7443f4d1@joe>

   From: "Joseph D. Wagner" <wagnerjd@prodigy.net>
   Date: Sun, 13 Oct 2002 03:40:51 -0500

   If you can code multi-threading SMP block and inode
   allocation using a non-preemptive kernel (which Linux is) ON THE SAME
   PARTITION, I will eat my hard drive.
   
First, what you're asking me for is already occuring in the reiserfs
and xfs code in 2.5.x.

Now onto ext2/ext3 where it doesn't exactly happen now.

It can easily be done using the SMP atomic bit operations we have in
the kernel.  On many cpus (x86 is one) it would thus reduce to one
atomic instruction to allocate a block or inode anywhere on the
filesystem, no locks even needed to make it atomic.

Allocating a block/inode is just a compare and set operation after
all.  The block/inode maps in ext2/ext3 are already just plain
bitmaps suitable for sending to the SMP bit operations we have.

It's very doable and I've even discussed this with Stephen Tweedie
and others in the past.

I think I bring some credibility to the table, being that I worked on
threading the entire Linux networking.  You can choose to disagree. :)

Why hasn't it been done?  Because ext2/ext3 block allocation
synchronization isn't showing up high on anyone's profiles at all
since the operations are so short and quick that the lock is dropped
almost immediately after it is taken.  And it's not like people aren't
running large workloads on 16-way and higher NUMA boxes in 2.5.x.
Copying the data around and doing the I/O eats the bulk of the
computing cycles.

And if you're of the "numbers talk, bullshit walks" variety just have
a look at the Linux specweb99 submissions if you don't believe the
Linux kernel can scale quite well.  Show us something that scales
better than what we have now if you're going to say we suck.  We do
suck, just a lot less than most implementations. :-)

  reply	other threads:[~2002-10-13  8:46 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <Pine.LNX.4.33.0210130202070.17395-100000@coffee.psychology.mcmaster.ca>
2002-10-13  6:34 ` Strange load spikes on 2.4.19 kernel Rob Mueller
2002-10-13  7:01   ` Joseph D. Wagner
2002-10-13  7:01     ` David S. Miller
2002-10-13  7:49       ` Joseph D. Wagner
2002-10-13  7:50         ` David S. Miller
2002-10-13  8:16           ` Joseph D. Wagner
2002-10-13  8:13             ` David S. Miller
2002-10-13  8:40               ` Joseph D. Wagner
2002-10-13  8:45                 ` David S. Miller [this message]
2002-10-13  8:48                 ` Mike Galbraith
2002-10-13  8:48                   ` David S. Miller
2002-10-13  8:51                 ` William Lee Irwin III
2002-10-13 10:20                 ` Ingo Molnar
2002-10-13 19:42                 ` Rik van Riel
2002-10-16 21:00         ` Bill Davidsen
2002-10-13  8:59     ` Anton Blanchard
2002-10-13  9:26       ` William Lee Irwin III
2002-10-13 12:31   ` Marius Gedminas
2002-12-11 22:54 Steven Roussey
2002-12-11 23:09 ` Andrew Morton
2002-12-11 23:54   ` Steven Roussey
2002-12-12  0:13     ` Andrew Morton
2002-12-12  0:31       ` Steven Roussey
     [not found] <113001c27282$93955eb0$1900a8c0@lifebook.suse.lists.linux.kernel>
     [not found] ` <000001c27286$6ab6bc60$7443f4d1@joe.suse.lists.linux.kernel>
     [not found]   ` <20021013.000127.43007739.davem@redhat.com.suse.lists.linux.kernel>
2002-10-13  7:24     ` Andi Kleen
2002-10-13  7:21       ` David S. Miller
2002-10-13 11:47       ` Hugh Dickins
2002-10-13 18:29         ` Andrew Morton
     [not found] <Pine.LNX.4.33.0210121605490.16179-100000@coffee.psychology.mcmaster.ca>
2002-10-13  0:49 ` Rob Mueller
     [not found] <001401c2719b$9d45c4a0$53241c43@joe>
2002-10-12  6:54 ` Rob Mueller
  -- strict thread matches above, loose matches on Subject: below --
2002-10-12  3:13 Joseph D. Wagner
2002-10-12  3:10 Joseph D. Wagner
2002-10-12  1:12 Rob Mueller
2002-10-12  1:25 ` Andrew Morton
2002-10-12  2:25   ` Rob Mueller
2002-10-12  3:07     ` Andrew Morton
2002-10-12  6:37       ` Rob Mueller
2002-10-12  6:44         ` Andrew Morton
2002-10-12  6:52           ` Rob Mueller
2002-10-12  7:00             ` Andrew Morton
2002-10-13  6:14               ` Rob Mueller
2002-10-13  7:27                 ` Simon Kirby

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=20021013.014517.51702915.davem@redhat.com \
    --to=davem@redhat.com \
    --cc=hahn@physics.mcmaster.ca \
    --cc=jhoward@fastmail.fm \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robm@fastmail.fm \
    --cc=wagnerjd@prodigy.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).