From owner-freebsd-current@FreeBSD.ORG Fri Jan 30 09:04:07 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DE53516A4CF; Fri, 30 Jan 2004 09:04:07 -0800 (PST) Received: from mailout1.pacific.net.au (mailout1.pacific.net.au [61.8.0.84]) by mx1.FreeBSD.org (Postfix) with ESMTP id 745BA43D5F; Fri, 30 Jan 2004 09:03:46 -0800 (PST) (envelope-from bde@zeta.org.au) Received: from mailproxy2.pacific.net.au (mailproxy2.pacific.net.au [61.8.0.87])i0UH3HLE031757; Sat, 31 Jan 2004 04:03:17 +1100 Received: from gamplex.bde.org (katana.zip.com.au [61.8.7.246]) i0UH3EYc019058; Sat, 31 Jan 2004 04:03:15 +1100 Date: Sat, 31 Jan 2004 04:03:13 +1100 (EST) From: Bruce Evans X-X-Sender: bde@gamplex.bde.org To: Kris Kennaway In-Reply-To: <20040129231521.GA68516@xor.obsecurity.org> Message-ID: <20040131030718.I602@gamplex.bde.org> References: <200401292134.i0TLYSfD019841@Espresso.NEEBU.Net> <20040129231521.GA68516@xor.obsecurity.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: current@freebsd.org Subject: Re: unusually high load averages X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Jan 2004 17:04:08 -0000 On Thu, 29 Jan 2004, Kris Kennaway wrote: > On Fri, Jan 30, 2004 at 12:08:17AM +0100, Melvyn Sopacua wrote: > > On Thursday 29 January 2004 22:34, Jake Khuon wrote: > > > > > I'm noticing some unusually high load averages even though nothing seems to > > > be taking up much CPU. This started happening with a recent cvsup (last > > > night). Anyone know what might be causing this? > > > > You are actually seeing > 0.00% CPU/WCPU, cause with me everything is zero, > > allthough I know for sure that's not true. > > You both forgot to mention which scheduler you're using. This is > important. It's easy enough to list the bugs for each scheduler and to determine the scheduler (and the approximate kernel source version) by observing the bugs: 0.00% CPU/WCPU: This indicates a 4BSD scheduler with the bug that I fixed recently. The bug lived for almost a month. CPU always the same as WCPU: This indicates a ULE scheduler and certain bugs. ULE doesn't maintain all the statistics related to the old scheduler or provide alternatives (it just fakes some), and statistics programs blindly display all the old statistics. High load average despite only idle processes running: This seems to be scheduler-independent. Running top to watch the load average raises the load average by about 0.1. I think the problem is that loadav() is now a kthread that restarted by a timeout, so it now sees a herd of other processes that are restarted by the same timeout. Previously it was run as a timeout and other threads were put on the run queue by a timeout; the ordering of the timeouts was hopefully random so that loadav() saw the correct number of processes restarted by timeouts, on average. Now loadav() sees all lower priority processes that are restarted by the same timeout (since they are all restarted but loadav() runs first). Bruce