public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Jeff V. Merkey" <jmerkey@vger.timpanogas.org>
To: Ingo Molnar <mingo@elte.hu>
Cc: linux-kernel@vger.kernel.org
Subject: Re: 2.2.18Pre Lan Performance Rocks!
Date: Mon, 30 Oct 2000 01:55:46 -0700	[thread overview]
Message-ID: <20001030015546.B19869@vger.timpanogas.org> (raw)
In-Reply-To: <20001030010808.B19615@vger.timpanogas.org> <Pine.LNX.4.21.0010301047030.3186-100000@elte.hu>
In-Reply-To: <Pine.LNX.4.21.0010301047030.3186-100000@elte.hu>; from mingo@elte.hu on Mon, Oct 30, 2000 at 10:52:08AM +0100

On Mon, Oct 30, 2000 at 10:52:08AM +0100, Ingo Molnar wrote:
> 
> On Mon, 30 Oct 2000, Jeff V. Merkey wrote:
> 
> > [...] All protection has to go away in all LAN paths for this to
> > happen, and user space apps set to ring 0. [...]
> 
> i found that this is not a requirement for good network scalability. We do
> not do a syscall for every packet, so the cost evens out. Sure, it does
> not hurt to not eat ~1 microsecond per system-call, but it causes no
> overhead or scalability limit otherwise. In the TUX webserver we have
> user-space modules doing context-switch-less webserving, and it scales
> quite well, and is generic.
> 
> 	Ingo

No argument here, but the overhead of reloading CR3 period will kill
performance.  2.4 does not beat NetWare, BTW, it gets a little further,
but still hits the wall, and Netware keeps going strong, and scales 
up to 5000 users on file and print, with a SINGLE processor at less <
40% utilization.  Linux hits the wall at a few hundred file and print
users.  It's the overhead of CR3 switching at all that is causing this
and the heavy usage of Intel's protection model.

For example, if you put a MOV EAX, CR3;  MOV CR3, EAX; in a context switching
path, on a PPro 200, you can do about 35,000 context switches/second
(I did this in NetWare 4.x in 1994) with the same code without the 
CR3 reload, I could do over 2,000,000 context switches/second without
the CR3 load.  INVL Page[0] in the same path is less heavy, but still
reduced context switches to 135,000/second.  It's the CR3 activity period
that kills performance.  There's also the use of segment registers
all over the place to copy from kernel to user and user to kernel 
space memory. Having the fast paths you mention does help a lot,
but it's the fact that this goes on at all that will make it tough 
to walk into a NetWare shop with Linux and rip out NetWare servers
and replace them unless we look at a NetWare vs. NetLinux (that's 
what we call it! a NetWare-like Linux platform).  

If we had this, MS would be running for the trenches.  Coupling the 
internet application base of Linux with the speed of NetWare would
be Mr. Gate's worst nightmare.  They've been trying to kill off NetWare
for almost 15 years, and it's still out there and they are still 
slower, and everyone knows it.  It's not Linux or NT that's killing 
off NetWare, right now, it's the incompetent management in San Jose
who are trying to rape Novell's rich bank accounts 
(Schmidt and Sonsini and friends), and the fact they have no IA64
NetWare (they would be shipping it not if I were still there ....).

It could be as easy as a compile option in .config (NETWARE_SERVER_MODE [Y/N])
with WTD (which is a more sophistacted method for doing lazy VM and 
controlling context switching activity for fast path I/O) and 
mapping of te Linux address space as linear -- you can still have 
protection with this model, just some apps would be able to load
in the kernel address space, and run at ring 0).

:-)

Jeff
-
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/

  reply	other threads:[~2000-10-30  8:59 UTC|newest]

Thread overview: 152+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-10-29 23:19 2.2.18Pre Lan Performance Rocks! Jeff V. Merkey
     [not found] ` <E13q2R7-0006S7-00@the-village.bc.nu>
2000-10-30  1:35   ` Jeff V. Merkey
2000-10-30  6:47     ` Andi Kleen
2000-10-30  6:58       ` Jeff V. Merkey
2000-10-30  7:08         ` Andi Kleen
2000-10-30  7:16           ` Jeff V. Merkey
2000-10-30  7:38             ` Andi Kleen
2000-10-30  8:04               ` Jeff V. Merkey
2000-10-30  8:16                 ` Andi Kleen
2000-10-30 12:47                 ` Alan Cox
2000-10-30 12:50                   ` Andi Kleen
2000-10-30  8:26           ` Ingo Molnar
2000-10-30  7:20             ` Jeff V. Merkey
2000-10-30  8:39               ` Ingo Molnar
2000-10-30  8:08                 ` Jeff V. Merkey
2000-10-30  9:52                   ` Ingo Molnar
2000-10-30  8:55                     ` Jeff V. Merkey [this message]
2000-10-30 10:13                       ` Ingo Molnar
2000-10-30  9:11                         ` Jeff V. Merkey
2000-10-30 10:41                           ` Ingo Molnar
2000-10-30  9:33                             ` Jeff V. Merkey
2000-10-30 10:56                               ` Ingo Molnar
2000-10-30  9:45                                 ` Jeff V. Merkey
2000-10-30 11:04                               ` Ingo Molnar
2000-10-30  9:56                                 ` Jeff V. Merkey
2000-10-30 11:13                                   ` Ingo Molnar
2000-10-30 10:08                                     ` Jeff V. Merkey
2000-10-30 17:41                                     ` Andrea Arcangeli
2000-10-30 17:58                                       ` Chris Evans
2000-10-30 18:01                                         ` Jeff V. Merkey
2000-10-30 18:21                                           ` Andrea Arcangeli
2000-10-30 17:59                                       ` Jeff V. Merkey
2000-10-31  8:08                                         ` Ingo Molnar
2000-10-31 20:04                                           ` Jeff V. Merkey
2000-10-30 19:11                                       ` Dan Hollis
2000-10-31 18:59                                         ` Pavel Machek
2000-10-30 10:27                       ` Ingo Molnar
2000-10-30  9:20                         ` Jeff V. Merkey
2000-10-30 10:44                           ` Ingo Molnar
2000-10-30  9:38                             ` Jeff V. Merkey
2000-10-30 11:01                               ` Ingo Molnar
2000-10-30  9:54                                 ` Jeff V. Merkey
2000-10-30 11:12                                   ` Ingo Molnar
2000-10-30 10:06                                     ` Jeff V. Merkey
2000-10-30 10:56                                       ` john slee
2000-10-30 18:04                                         ` Jeff V. Merkey
2000-10-30 11:31                                       ` Ingo Molnar
2000-10-30 12:57                                   ` Alan Cox
2000-10-30 17:55                                     ` Jeff V. Merkey
2000-10-30 18:34                                       ` Alan Cox
2000-10-30 21:17                                         ` Jeff V. Merkey
2000-10-31  9:25                                         ` Erik Andersen
2000-10-31 18:50                               ` Pavel Machek
2000-10-31 20:06                                 ` Jeff V. Merkey
2000-10-31 20:13                                   ` Jeff V. Merkey
2000-10-31 21:31                                     ` Ingo Molnar
2000-10-31 21:56                                       ` Ingo Molnar
2000-10-31 21:57                                       ` Jeff V. Merkey
2000-11-01  0:27                                   ` Ingo Molnar
2000-10-31 23:18                                     ` Jeff V. Merkey
2000-11-01  0:47                                       ` Ingo Molnar
2000-11-01  0:56                                       ` Davide Libenzi
     [not found]                                       ` <20001102031546.B10806@cerebro.laendle>
     [not found]                                         ` <20001101212835.A2425@vger.timpanogas.org>
     [not found]                                           ` <20001102043332.A27126@fuji.laendle>
     [not found]                                             ` <3A0195DA.DDEBAC51@timpanogas.org>
     [not found]                                               ` <20001102194323.D2790@cerebro.laendle>
     [not found]                                                 ` <3A01CBB5.48C3094A@timpanogas.org>
     [not found]                                                   ` <20001102214903.F2790@cerebro.laendle>
     [not found]                                                     ` <3A01E71A.778BD898@timpanogas.org>
     [not found]                                                       ` <20001102232210.H2790@cerebro.laendle>
     [not found]                                                         ` <3A01ECD2.76DE10FF@timpanogas.org>
2000-11-02 22:46                                                           ` Jeff V. Merkey
2000-11-03  0:12                                                             ` Davide Libenzi
2000-11-02 23:00                                                               ` Jeff V. Merkey
2000-10-31 21:34                                 ` Ingo Molnar
2000-10-31 21:52                                   ` Jeff V. Merkey
2000-10-31 22:05                                     ` Andi Kleen
2000-10-31 22:23                                       ` Jeff V. Merkey
2000-10-31 22:45                                         ` Jeff V. Merkey
2000-10-31 22:44                                           ` David Lang
2000-10-31 22:57                                             ` Jeff V. Merkey
2000-10-31 22:52                                               ` David Lang
2000-10-31 23:02                                           ` Alan Cox
2000-10-31 23:03                                             ` Jeff V. Merkey
2000-11-01  0:08                                           ` Ingo Molnar
2000-10-31 22:59                                             ` Jeff V. Merkey
2000-11-01  2:30                                           ` Horst von Brand
2000-10-31 23:05                                         ` Richard B. Johnson
2000-10-31 23:14                                           ` Jeff V. Merkey
2000-11-01  0:32                                             ` Ingo Molnar
2000-10-31 23:23                                               ` Jeff V. Merkey
2000-11-01  0:55                                           ` Ingo Molnar
2000-10-31 23:54                                         ` Ingo Molnar
2000-10-31 22:47                                           ` Jeff V. Merkey
2000-10-31 22:56                                             ` Larry McVoy
2000-10-31 22:55                                               ` Jeff V. Merkey
2000-11-01  0:10                                             ` Ingo Molnar
2000-11-01  5:38                                         ` Daniel Phillips
2000-11-03  6:42                                         ` Daniel Phillips
2000-10-31 22:59                                     ` Michael H. Warfield
2000-10-31 23:12                                     ` Ingo Molnar
2000-10-31 22:28                                       ` Jeff V. Merkey
2000-11-01  5:01                                         ` Peter Samuelson
2000-11-01  5:09                                           ` Larry McVoy
2000-11-01  5:20                                             ` Peter Samuelson
2000-10-30 10:50                           ` Ingo Molnar
2000-10-30  9:40                             ` Jeff V. Merkey
2000-10-30 23:26                 ` David Woodhouse
2000-10-30 23:49                   ` Jeff V. Merkey
2000-10-31 23:34                     ` Roger Larsson
2000-10-31 15:18 ` Reto Baettig
2000-10-31 20:26   ` Alan Cox
2000-10-31 15:30     ` Reto Baettig
2000-10-31 20:37       ` Alan Cox
2000-10-31 20:48         ` Jesse Pollard
2000-10-31 20:58           ` Alan Cox
2000-11-01  1:33           ` Horst von Brand
2000-11-01  3:42             ` Jesse Pollard
2000-11-01 13:26               ` Horst von Brand
2000-10-31 21:43     ` Jeff V. Merkey
2000-10-31 21:50       ` Jeff V. Merkey
2000-10-31 20:36   ` Rik van Riel
2000-10-31 15:47     ` Reto Baettig
2000-10-31 21:05       ` Rik van Riel
2000-10-31 21:33     ` Jeff V. Merkey
2000-10-31 21:48       ` Rik van Riel
2000-10-31 16:54         ` Reto Baettig
2000-10-31 21:58           ` Rik van Riel
2000-10-31 21:53         ` Jeff V. Merkey
     [not found] <200010300823.BAA19834@vger.timpanogas.org>
2000-10-30  8:36 ` Jeff V. Merkey
  -- strict thread matches above, loose matches on Subject: below --
2000-10-31 21:36 Paul Menage
2000-10-31 21:44 ` Jeff V. Merkey
2000-10-31 21:44   ` David S. Miller
2000-10-31 22:05   ` Larry McVoy
2000-10-31 22:15     ` Jeff V. Merkey
2000-10-31 22:27       ` Larry McVoy
2000-10-31 22:38         ` Jeff V. Merkey
2000-10-31 22:48           ` Rik van Riel
2000-10-31 22:50             ` Jeff V. Merkey
2000-10-31 22:49           ` Larry McVoy
2000-10-31 22:53             ` Jeff V. Merkey
2000-10-31 23:15           ` Nathan Paul Simons
2000-10-31 23:20             ` Jeff V. Merkey
2000-11-01  0:00               ` Michael H. Warfield
2000-11-01  0:07                 ` Alan Cox
2000-11-01  0:13                   ` Michael H. Warfield
2000-11-01  1:30           ` Andrea Arcangeli
     [not found]             ` <20001031183809.C9733@.timpanogas.org>
2000-11-01 15:41               ` Andrea Arcangeli
2000-11-01 17:25                 ` Jeff V. Merkey
2000-11-01 17:35                   ` Jeff V. Merkey
2000-11-01 18:07                     ` Andrea Arcangeli
2000-11-01 18:34                       ` Jeff V. Merkey
2000-11-01 21:13                         ` Daniel Phillips
2000-11-01 21:32                           ` Jeff V. Merkey
2000-11-01  9:51           ` Anton Altaparmakov
2000-11-01 17:28             ` Jeff V. Merkey
2000-11-02 21:58             ` Anton Altaparmakov
2000-11-01 11:13           ` David Woodhouse
2000-11-01 15:00             ` Andrea Arcangeli
2000-10-31 23:21 ` Matti Aarnio
2000-10-31 23:39   ` David Weinehall

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=20001030015546.B19869@vger.timpanogas.org \
    --to=jmerkey@vger.timpanogas.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    /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