From: Andi Kleen <ak@muc.de>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: davem@redhat.com, andrew.morton@digeo.com, linux-kernel@vger.kernel.org
Subject: Re: [BENCHMARK] Lmbench 2.5.54-mm2 (impressive improvements)
Date: 05 Jan 2003 11:06:47 +0100 [thread overview]
Message-ID: <m3k7hjq5ag.fsf@averell.firstfloor.org> (raw)
In-Reply-To: <Pine.LNX.4.44.0301041952110.1651-100000@home.transmeta.com>
Linus Torvalds <torvalds@transmeta.com> writes:
> On Sat, 4 Jan 2003, Andrew Morton wrote:
> > >
> > > Hmm.. The backup patch doesn't handle single-stepping correctly: the
> > > eflags cleanup singlestep patch later in the sysenter sequence _depends_
> > > on the stack (and thus thread) being right on the very first in-kernel
> > > instruction.
> >
> > Well that's just a straight `patch -R' of the patch which added the wrmsr's.
>
> Yes, but the breakage comes laterr when a subsequent patch in the
> 2.5.53->54 stuff started depending on the stack location being stable even
> on the first instruction.
Regarding the EFLAGS handling: why can't you just do
a pushfl in the vsyscall page before pushing the 6th arg on the stack
and a popfl afterwards.
Then the syscall entry in kernel code could just do
pushfl $fixed_eflags
popfl
The first popl for the 6th arg in the vsyscall page wouldn't be traced
then, but I doubt that is a problem.
Would add a few cycles to the entry path, but then it is better than
having slow context switch.
This would also eliminate the random IOPL problem Luca noticed.
BTW I think I have the same issue on x86-64 with SYSCALL (random IOPL
in kernel), but so far nothing broke, so it is probably not a big
problem.
>
> > > It doesn't show up on lmbench (insufficient precision), but your AIM9
> > > numbers are quite interesting. Are they stable?
> >
> > Seem to be, but more work is needed, including oprofiling. Andi is doing
> > some P4 testing at present.
>
> Ok.
Here are the numbers from a Dual 2.4Ghz Xeon. The first is plain
2.5.54, the second is with the WRMSR-in-switch-to patch backed out.
Also 2.4.18-aa for co
Host OS 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K
ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw
oenone Linux 2.5.54 2.410 3.5600 6.0300 3.9900 34.8 8.59000 43.7
oenone Linux 2.5.54 1.270 2.3300 4.7700 2.5100 29.5 4.16000 39.2
If that is true the slowdown would be nearly 50% for the 2p case.
That looks a bit much, I wonder if lmbench is very accurate here
(do we have some other context switch benchmark to double check?)
but all numbers show a significant slowdown.
-Andi
next prev parent reply other threads:[~2003-01-05 9:58 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <94F20261551DC141B6B559DC4910867204491F@blr-m3-msg.wipro.com.suse.lists.linux.kernel>
[not found] ` <3E155903.F8C22286@digeo.com.suse.lists.linux.kernel>
2003-01-03 18:40 ` [BENCHMARK] Lmbench 2.5.54-mm2 (impressive improvements) Andi Kleen
2003-01-03 21:32 ` Andrew Morton
2003-01-05 1:01 ` Andrew Morton
2003-01-05 3:35 ` Linus Torvalds
2003-01-05 3:51 ` Linus Torvalds
2003-01-05 3:54 ` Andrew Morton
2003-01-05 3:52 ` Linus Torvalds
2003-01-05 10:06 ` Andi Kleen [this message]
2003-01-05 18:51 ` Linus Torvalds
2003-01-05 23:46 ` Andi Kleen
2003-01-06 1:33 ` Linus Torvalds
2003-01-06 2:05 ` Andi Kleen
2003-01-06 0:58 ` H. Peter Anvin
2003-01-05 9:18 ` Andrew Morton
2003-01-03 8:59 Aniruddha M Marathe
2003-01-03 9:33 ` Andrew Morton
2003-01-03 10:24 ` David S. Miller
2003-01-03 10:22 ` 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=m3k7hjq5ag.fsf@averell.firstfloor.org \
--to=ak@muc.de \
--cc=andrew.morton@digeo.com \
--cc=davem@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
/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