| From | Sent On | Attachments |
|---|---|---|
| Chris Costello | Jun 11, 1999 7:59 am | |
| David E. Cross | Jun 11, 1999 8:27 am | |
| William S. Duncanson | Jun 11, 1999 8:41 am | |
| Mikhail V. Evstiounin | Jun 11, 1999 9:04 pm | |
| Aaron Smith | Jun 12, 1999 1:32 am | |
| Arun Sharma | Jun 12, 1999 10:40 am |
| Subject: | Re: High syscall overhead? | |
|---|---|---|
| From: | Chris Costello (chr...@calldei.com) | |
| Date: | Jun 11, 1999 7:59:03 am | |
| List: | org.freebsd.freebsd-smp | |
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 ro...@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<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX> 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: cro...@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 majo...@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
-- Chris Costello <chr...@calldei.com> This message transmitted on 100% recycled electrons.
To Unsubscribe: send mail to majo...@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message





