From owner-freebsd-stable@FreeBSD.ORG Mon Dec 5 08:41:11 2005 Return-Path: X-Original-To: freebsd-stable@freebsd.org Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id B204116A41F for ; Mon, 5 Dec 2005 08:41:11 +0000 (GMT) (envelope-from kama@pvp.se) Received: from ms1.as.pvp.se (dns.pvp.se [213.64.187.226]) by mx1.FreeBSD.org (Postfix) with ESMTP id E473543D66 for ; Mon, 5 Dec 2005 08:41:10 +0000 (GMT) (envelope-from kama@pvp.se) Received: by ms1.as.pvp.se (Postfix, from userid 1001) id 9B784D3; Mon, 5 Dec 2005 09:42:08 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by ms1.as.pvp.se (Postfix) with ESMTP id 97402A6; Mon, 5 Dec 2005 09:42:08 +0100 (CET) Date: Mon, 5 Dec 2005 09:42:08 +0100 (CET) From: kama X-X-Sender: kama@ns1.as.pvp.se To: Peter Jeremy In-Reply-To: <20051202190242.GL32006@cirb503493.alcatel.com.au> Message-ID: <20051205093804.D5758@ns1.as.pvp.se> References: <20051202142731.H92866@ns1.as.pvp.se> <20051202190242.GL32006@cirb503493.alcatel.com.au> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: freebsd-stable@freebsd.org Subject: Re: cpu-timer rate X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Dec 2005 08:41:11 -0000 On Sat, 3 Dec 2005, Peter Jeremy wrote: > On Fri, 2005-Dec-02 14:32:58 +0100, kama wrote: > >I am just wondering why the cpu-timer is doubled from what I set in > >kern.hz? > > > ># vmstat -i > >interrupt total rate > ... > >cpu0: timer 14314031 1999 > >Total 14750922 2060 > > > ># sysctl -a | grep hz > >kern.clockrate: { hz = 1000, tick = 1000, profhz = 666, stathz = 133 } > > There's only a single timer but FreeBSD needs two independent clocks. > The 'tick' clock is used to update the TOD counters and decide when to > reschedule processes. The 'stathz' is used to collect statistics on > CPU utilisation ('profhz' is used instead if any process is using > profiling). Since processes tend to synchronize to 'tick' the > statistics clock needs to be independent to ensure that a CPU utilisation > is correctly allocated. > > In order to simulate two clocks, FreeBSD runs the hardware clock at a > high rate and uses two different divisors for the soft clocks (/2 for > tick, /3 for profhz and /15 for stathz). Larger divisors are better > for utilisation statistics but increase clock interrupt overheads. Ehm, Im sorry, but did that even answer my question? I appreciate that you took time to answer about the different clocks. But that does not answer why vmstat -i shows a rate of 2000 when I have set the hz to 1000. /Bjorn