Date: Fri, 11 Jun 1999 10:40:37 -0400 From: "David E. Cross" <crossd@cs.rpi.edu> To: freebsd-hackers@freebsd.org Subject: High syscall overhead? Message-ID: <199906111440.KAA70517@cs.rpi.edu>
next in thread | raw e-mail | index | archive | help
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. 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199906111440.KAA70517>