Date: Mon, 28 Jun 1999 11:20:02 -0700 (PDT) From: Matthew Dillon <dillon@apollo.backplane.com> To: Kirk McKusick <mckusick@flamingo.McKusick.COM> Cc: Alan Cox <alc@cs.rice.edu>, Julian Elischer <julian@whistle.com>, Mike Smith <mike@smith.net.au>, Peter Wemm <peter@FreeBSD.ORG>, "John S. Dyson" <toor@dyson.iquest.net>, dg@root.com, dyson@iquest.net, current@FreeBSD.ORG, Greg Lehey <grog@lemis.com> Subject: Re: Found the startup panic - ccd ( patch included ) Message-ID: <199906281820.LAA23440@apollo.backplane.com> References: <199906281338.GAA02414@flamingo.McKusick.COM>
next in thread | previous in thread | raw e-mail | index | archive | help
:and B_WANTED code also required protection to avoid races), it would :make a big performance improvement to just go make sure that all the :BUF_ calls are already protected rather than needlessly add those splbio :and splx calls. : : Kirk Not as big as removing the lockmgr() code and replacing it with something more efficient. Do you realize that the change from B_BUSY to lockmgr() in the getnewbuf() has halved its loop performance? 8 subroutine calls have been indirectly added to the core loop. Eight! And none of them trivial. The serial counter you added halved it again. The loop performance is now 1/4 what it was before, which means that every time getnewbuf() cannot find a new buffer at the beginning of its scan its inefficiencies are compounded 4x per element. I spent a lot of time working on getnewbuf()'s performance and all those gains have now been erased. Look, I agree that we needed to change the B_BUSY stuff to some sort of new locking system, but that doesn't mean we have to throw the kitchen sink in along with it! And it doesn't mean that we have to create a mess in the code just to support certain essentricies that I am almost certain we can do without. -Matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199906281820.LAA23440>