[lkml]   [2002]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Intel P6 vs P7 system call performance
It get even worse with Hammer. When you run hammer in compatibility mode
(32 bit app on a 64 bit OS) the sysenter is an illegal instruction.
Since Intel don't implement syscall, there is no portable sys*
instruction for 32 bit apps. You could argue that libc hides it for you
and you just need libc to test the host at startup (do I get a sigill if
I try to do getpid() with sysenter? syscall? if so we uses int80 for
syscalls). But not all programs are linked dyn.

Too bad really, I tried the sysenter patch once, and the gain (on PIII
and athlon) was significant.

Fortunately the 64bit libc for hammer uses syscall.

PS: rdtsc on P4 is also painfully slow!!!


On man, 2002-12-09 at 20:46, H. Peter Anvin wrote:
> Followup to: <>
> By author: Dave Jones <>
> In newsgroup:
> >
> > On Mon, Dec 09, 2002 at 05:48:45PM +0000, Linus Torvalds wrote:
> >
> > > P4's really suck at system calls. A 2.8GHz P4 does a simple system call
> > > a lot _slower_ than a 500MHz PIII.
> > >
> > > The P4 has problems with some other things too, but the "int + iret"
> > > instruction combination is absolutely the worst I've seen. A 1.2GHz
> > > Athlon will be 5-10 times faster than the fastest P4 on system call
> > > overhead.
> >
> > Time to look into an alternative like SYSCALL perhaps ?
> >
> SYSCALL is AMD. SYSENTER is Intel, and is likely to be significantly
> faster. Unfortunately SYSENTER is also extremely braindamaged, in
> that it destroys *both* the EIP and the ESP beyond recovery, and
> because it's allowed in V86 and 16-bit modes (where it will cause
> permanent data loss) which means that it needs to be able to be turned
> off for things like DOSEMU and WINE to work correctly.
> -hpa


Terje Eggestad
Scali Scalable Linux Systems

Olaf Helsets Vei 6 tel: +47 22 62 89 61 (OFFICE)
P.O.Box 150, Oppsal +47 975 31 574 (MOBILE)
N-0619 Oslo fax: +47 22 62 89 51

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:31    [W:0.087 / U:7.560 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site