Date: Thu, 20 Nov 1997 18:24:40 -0800 (PST) From: Chris Timmons <skynyrd@opus.cts.cwu.edu> To: "John S. Dyson" <toor@dyson.iquest.net> Cc: Jaye Mathisen <mrcpu@cdsnet.net>, hackers@FreeBSD.ORG Subject: Re: Serious performance issue with 2.2.5-RELEASE Message-ID: <Pine.BSF.3.96.971120181005.19403B-100000@opus.cts.cwu.edu> In-Reply-To: <199711202155.QAA03288@dyson.iquest.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On around November 3, there was a thread here in -hackers of subject "FreeBSD shines" that mentioned a semaphore benchmarking program: "If anyone wants the code (and results for other OSes) see ftp://samba.anu.edu.au/pub/tridge/semspeed.c" Subsequent discussion pointed out that 2.2 was quite a bit faster than 2.2.5. Maybe a look at semspeed.c will provide some suggestions about where to look. I noticed similar symptoms on my ppro 200/128MB 2.2 based file server sometime in August - short hangs of 10-20 seconds under heavy file system load, nfs+cvsupd. For my system, switching from if_de hardware to if_fxp appeared to help a lot although I upgraded to more memory around the same time... so, no real clues just vague rambling. 2.2-STABLE FreeBSD 2.2-STABLE #0: Sun Sep 7 14:31:07 PDT 1997 with 256MB and maxvnodes=32768 works really, really well. -Chris On Thu, 20 Nov 1997, John S. Dyson wrote: > Jaye Mathisen said: > > > > > > I upgraded my web server to 2.2.5 from 2.2.2-stable, dated sometime in > > July. > > > > Big mistake. > > > > The only update to take place was the make buildworld, make installworld, > > no other configuration files were modified, nor any changes to startup > > scripts, etc. > > > > I now get these weird pauses where everything on the machine just freezes > > for 30-40 seconds, sometimes longer. NFS is compiled in, but not in use. > > > > The system was a web server, and was happily serving up several hundred > > domains. Now with the upgrade, I'll be lucky to keep them. Not good. > > > > It's a Super Micro P6, 384MB RAM, 2 SCSI disks off a bus-logic controller. > > > > Any ideas appreciated. I have built a new kernel from sources supped > > 11/7, but it doesn't seem to be any better. > > > Try this patch. The change in vfs_bio from 2.2.2 to 2.2.5 appears to be > incorrect, and subverts part of the functionality of what getnewbuf is > supposed to do. (Sorry, the patch might be reversed.) > > > Index: sys/kern/vfs_bio.c > =================================================================== > RCS file: /local/home/ncvs/src/sys/kern/vfs_bio.c,v > retrieving revision 1.104.2.7 > retrieving revision 1.104.2.3 > diff -C2 -r1.104.2.7 -r1.104.2.3 > *** vfs_bio.c 1997/09/01 23:23:08 1.104.2.7 > --- vfs_bio.c 1997/02/13 08:17:18 1.104.2.3 > *************** > *** 889,896 **** > /* wait for a free buffer of any kind */ > needsbuffer = 1; > ! do > ! tsleep(&needsbuffer, (PRIBIO + 1) | slpflag, "newbuf", > ! slptimeo); > ! while (needsbuffer); > return (0); > } > --- 872,877 ---- > /* wait for a free buffer of any kind */ > needsbuffer = 1; > ! tsleep(&needsbuffer, > ! (PRIBIO + 1) | slpflag, "newbuf", slptimeo); > return (0); > } > > > -- > John > dyson@freebsd.org > jdyson@nc.com >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.971120181005.19403B-100000>