From owner-freebsd-smp Fri Jun 11 8: 0:43 1999 Delivered-To: freebsd-smp@freebsd.org Received: from leap.innerx.net (leap.innerx.net [38.179.176.25]) by hub.freebsd.org (Postfix) with ESMTP id 3301D151CB; Fri, 11 Jun 1999 08:00:38 -0700 (PDT) (envelope-from chris@holly.dyndns.org) Received: from holly.dyndns.org (ip126.houston14.tx.pub-ip.psi.net [38.27.214.126]) by leap.innerx.net (Postfix) with ESMTP id 930E3370B9; Fri, 11 Jun 1999 11:00:31 -0400 (EDT) Received: (from chris@localhost) by holly.dyndns.org (8.9.3/8.9.3) id JAA96358; Fri, 11 Jun 1999 09:59:30 -0500 (CDT) (envelope-from chris) Date: Fri, 11 Jun 1999 09:59:25 -0500 From: Chris Costello To: "David E. Cross" Cc: freebsd-hackers@FreeBSD.ORG, freebsd-smp@FreeBSD.ORG Subject: Re: High syscall overhead? Message-ID: <19990611095925.V57174@holly.dyndns.org> Reply-To: chris@calldei.com References: <199906111440.KAA70517@cs.rpi.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii User-Agent: Mutt/0.96.3i In-Reply-To: <199906111440.KAA70517@cs.rpi.edu>; from David E. Cross on Fri, Jun 11, 1999 at 10:40:37AM -0400 Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Fri, Jun 11, 1999, David E. Cross wrote: > Just doing some performance testing and I noticed something rather > disturbing.... > > Here is the test program: > int main (void) > { > int count=0; > for(count=0;count <10000000;++count) > getppid(); > > return 0; > } > > The time on linux for this program is ~5 seconds (linux "time" reports 3.x, but > a wall clock clearly shows 5.x, go fig). FreeBSD reports 18.x seconds?!. I > have a dual processor system and decided to parallel run them... it took > 52!?! seconds, linux on the same was again about 5. Looking through the > exception.s it appears that on entry to the kernel an MP lock is obtained... > I thought we had splX(); to protect concurancy in the kernel. ('sc' being the program above, compiled without optimization, just with cc -o sc sc.c) $ time ./sc 10.04s real 3.89s user 5.64s system I counted between around 9 and a half to 10 and a half seconds on my wall clock (trusty old GE, same model they have in public schools). Copyright (c) 1992-1999 The FreeBSD Project. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. FreeBSD 4.0-CURRENT #4: Sun May 30 04:22:23 CDT 1999 root@holly.dyndns.org:/usr/src/sys/compile/Holly Timecounter "i8254" frequency 1193182 Hz CPU: AMD-K6(tm) 3D processor (350.80-MHz 586-class CPU) Origin = "AuthenticAMD" Id = 0x580 Stepping=0 Features=0x8001bf real memory = 67108864 (65536K bytes) sio0: system console avail memory = 62267392 (60808K bytes) SMP specific bug, perhaps? > > I am just curious what's the story with this. On some of my other tests it is > clear that FreeBSD is handling concurancy much better than linux (by an equal > factor actually, and on "real" tasks like real I/O handling). > > -- > David Cross | email: crossd@cs.rpi.edu > Systems Administrator/Research Programmer | Web: http://www.cs.rpi.edu/~crossd > Rensselaer Polytechnic Institute, | Ph: 518.276.2860 > Department of Computer Science | Fax: 518.276.4033 > I speak only for myself. | WinNT:Linux::Linux:FreeBSD > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-hackers" in the body of the message -- Chris Costello This message transmitted on 100% recycled electrons. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message