From: Gregory Maxwell <greg@linuxpower.cx>
To: Richard Gooch <rgooch@ras.ucalgary.ca>
Cc: Ingo Oeser <ingo.oeser@informatik.tu-chemnitz.de>,
"David S. Miller" <davem@redhat.com>,
Jeff Garzik <jgarzik@mandrakesoft.com>,
"H. Peter Anvin" <hpa@zytor.com>,
linux-kernel@vger.kernel.org
Subject: Re: X15 alpha release: as fast as TUX but in user space (fwd)
Date: Sun, 29 Apr 2001 15:47:20 -0400 [thread overview]
Message-ID: <20010429154720.B17155@xi.linuxpower.cx> (raw)
In-Reply-To: <Pine.LNX.4.33.0104281752290.10866-100000@localhost.localdomain> <20010428215301.A1052@gruyere.muc.suse.de> <200104282256.f3SMuRW15999@vindaloo.ras.ucalgary.ca> <9cg7t7$gbt$1@cesium.transmeta.com> <3AEBF782.1911EDD2@mandrakesoft.com> <15083.64180.314190.500961@pizda.ninka.net> <20010429153229.L679@nightmaster.csn.tu-chemnitz.de> <200104291848.f3TIm6821037@vindaloo.ras.ucalgary.ca> <20010429145552.A17155@xi.linuxpower.cx> <200104291902.f3TJ2Dd21232@vindaloo.ras.ucalgary.ca>
In-Reply-To: <200104291902.f3TJ2Dd21232@vindaloo.ras.ucalgary.ca>; from rgooch@ras.ucalgary.ca on Sun, Apr 29, 2001 at 01:02:13PM -0600
On Sun, Apr 29, 2001 at 01:02:13PM -0600, Richard Gooch wrote:
> Gregory Maxwell writes:
> > On Sun, Apr 29, 2001 at 12:48:06PM -0600, Richard Gooch wrote:
> > > Ingo Oeser writes:
> > > > On Sun, Apr 29, 2001 at 04:27:48AM -0700, David S. Miller wrote:
> > > > > The idea is that the one thing one tends to optimize for new cpus
> > > > > is the memcpy/memset implementation. What better way to shield
> > > > > libc from having to be updated for new cpus but to put it into
> > > > > the kernel in this magic page?
> > > >
> > > > Hehe, you have read this MXT patch on linux-mm, too? ;-)
> > > >
> > > > There we have 10x faster memmove/memcpy/bzero for 1K blocks
> > > > granularity (== alignment is 1K and size is multiple of 1K), that
> > > > is done by the memory controller.
> > >
> > > This sounds different to me. Using the memory controller is (should
> > > be!) a privileged operation, thus it requires a system call. This is
> > > quite different from code in a magic page, which is excuted entirely
> > > in user-space. The point of the magic page is to avoid the syscall
> > > overhead.
> >
> > Too bad this is a performance hack, otherwise we could place the
> > privlaged code in the read-only page, allow it to get execute from
> > user space, catch the exception, notice the EIP and let it continue
> > on.
>
> No need for anything that complicated. We can merge David's user-space
> memcpy code with the memory controller scheme. We need a new syscall
> anyway to access the memory controller, so we may as well just make it
> a simple interface. Then the user-space code may, on some machines,
> contain a test (for alignment) and call to the new syscall.
>
> The two schemes are independent, and should be treated as such. Just
> as the magic page code can call the new syscall, so could libc.
Would it make sence to have libc use the magic page for all syscalls? Then
on cpus with a fast syscall instruction, the magic page could contain the
needed junk in userspace to use it.
(i.e. that really should be in libc, but we don't want libc to contain all
sorts of CPU specific cruft.. or is there a more general way to accomplish
this?)
next prev parent reply other threads:[~2001-04-29 19:47 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-04-28 15:52 X15 alpha release: as fast as TUX but in user space (fwd) Ingo Molnar
2001-04-28 19:53 ` Andi Kleen
2001-04-28 22:56 ` Richard Gooch
2001-04-29 5:13 ` H. Peter Anvin
2001-04-29 11:14 ` Jeff Garzik
2001-04-29 11:27 ` David S. Miller
2001-04-29 13:32 ` Ingo Oeser
2001-04-29 18:48 ` Richard Gooch
2001-04-29 18:55 ` Gregory Maxwell
2001-04-29 19:02 ` Richard Gooch
2001-04-29 19:47 ` Gregory Maxwell [this message]
2001-04-29 19:54 ` Richard Gooch
2001-04-29 20:11 ` Ingo Oeser
2001-04-29 20:18 ` Gregory Maxwell
2001-04-29 22:20 ` Richard Gooch
2001-04-30 0:13 ` Andrea Arcangeli
2001-04-29 20:45 ` Arjan van de Ven
2001-04-29 22:18 ` Richard Gooch
2001-04-30 16:46 ` Alan Cox
2001-04-29 19:38 ` Jamie Lokier
2001-04-29 23:53 ` Andrea Arcangeli
2001-04-29 16:21 ` dean gaudet
2001-04-29 20:19 ` H. Peter Anvin
2001-04-29 22:29 ` Richard Gooch
2001-04-29 21:16 ` Jim Gettys
2001-04-29 21:40 ` H. Peter Anvin
2001-04-29 21:47 ` Jim Gettys
2001-05-02 18:18 ` Matti Aarnio
2001-05-02 19:34 ` Linus Torvalds
2001-05-02 20:55 ` Fabio Riccardi
2001-04-30 7:02 ` David S. Miller
2001-04-30 7:29 ` H. Peter Anvin
2001-04-30 7:51 ` David S. Miller
2001-04-30 14:56 ` Jonathan Lundell
2001-04-30 8:42 ` Pavel Machek
2001-05-03 7:13 ` Kai Henningsen
2001-05-03 7:44 ` Keith Owens
2001-05-03 10:37 ` Ingo Oeser
2001-05-03 15:44 ` Gregory Maxwell
2001-05-07 19:04 ` Pavel Machek
2001-05-03 9:37 ` Alan Cox
2001-05-07 19:03 ` vsyscalls [was Re: X15 alpha release: as fast as TUX but in user space (fwd)] Pavel Machek
2001-05-03 12:23 ` X15 alpha release: as fast as TUX but in user space (fwd) Helge Hafting
2001-05-03 19:09 ` Pavel Machek
2001-05-03 19:50 ` agrawal
2001-05-07 19:07 ` vsyscallRe: " Pavel Machek
2001-05-03 20:19 ` Alan Cox
2001-05-03 20:41 ` Gregory Maxwell
2001-05-04 8:06 ` Pavel Machek
2001-05-04 17:31 ` dean gaudet
2001-05-04 8:43 ` bert hubert
2001-05-02 10:52 ` Andi Kleen
2001-05-02 10:53 ` Ingo Molnar
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=20010429154720.B17155@xi.linuxpower.cx \
--to=greg@linuxpower.cx \
--cc=davem@redhat.com \
--cc=hpa@zytor.com \
--cc=ingo.oeser@informatik.tu-chemnitz.de \
--cc=jgarzik@mandrakesoft.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rgooch@ras.ucalgary.ca \
/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