From owner-freebsd-performance@FreeBSD.ORG Tue Jun 13 19:48:48 2006 Return-Path: X-Original-To: freebsd-performance@freebsd.org Delivered-To: freebsd-performance@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5F92116A479 for ; Tue, 13 Jun 2006 19:48:48 +0000 (UTC) (envelope-from danial_thom@yahoo.com) Received: from web33313.mail.mud.yahoo.com (web33313.mail.mud.yahoo.com [68.142.206.128]) by mx1.FreeBSD.org (Postfix) with SMTP id 2E7B643D46 for ; Tue, 13 Jun 2006 19:48:47 +0000 (GMT) (envelope-from danial_thom@yahoo.com) Received: (qmail 32771 invoked by uid 60001); 13 Jun 2006 19:48:46 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:Received:Date:From:Reply-To:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=TYFfr2lgZcAFxUWRyfXro/KwbhB7GRW2x7qJkiW+cR7/jFUgmtzxw3A2aLEVUG+EHozo/zo9YdC8CbRakS8vqTrPZsGCznQp4w/CDks+iyL6H7a9NY9E4aLYYAZ0dtHOCYc2qEX9vWto/gkH0z+PQEsLC6syhYMcP9MIKWRWDZ8= ; Message-ID: <20060613194846.32769.qmail@web33313.mail.mud.yahoo.com> Received: from [65.34.182.15] by web33313.mail.mud.yahoo.com via HTTP; Tue, 13 Jun 2006 12:48:46 PDT Date: Tue, 13 Jun 2006 12:48:46 -0700 (PDT) From: Danial Thom To: Robert Watson In-Reply-To: <20060613195113.T26068@fledge.watson.org> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Cc: freebsd-performance@freebsd.org, David Xu Subject: Re: Initial 6.1 questions X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: danial_thom@yahoo.com List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Jun 2006 19:48:48 -0000 --- Robert Watson wrote: > > On Tue, 13 Jun 2006, Danial Thom wrote: > > >> Two types of measurements are taken: sampled > ticks regarding whether the > >> system as a while is in {user, nice, system, > intr, idle}, and then sampling > >> for individual processes. Right now, the > system measurements are kept in a > >> simple array of tick counters called > cp_time. John Baldwin and others have > >> changes that make these tick counters > per-CPU. The lines at the top of > >> top(1)'s output are derived from those tick > counters. Ticks are measured > >> on each CPU, so those are a summary across > all CPUs. To add cpustat > >> support, we need to merge John's patch to > make cp_time per-CPU (ie., > >> different counters for different CPUs) and > teach the userland tools to > >> retrieve them. When you run top you'll > notice that it adjusts the > >> measurements each refresh. In effect, what > it's doing is sampling the > >> change in tick counts over the window, > pulling down the new values and > >> calculating the percentages of ticks in each > "bucket" in the last window. > > > > That doesn't explain why the Top line shows > 99.6% idle, but the cpu idle > > threads are showing significant usage. > > > > I'm getting a constant 6000 Interrupts / > Second on my em controller, yet top > > jumps all over the place; sitting at 99% idle > for 10 seconds, then jumping > > to 50%, then somewhere in between. It seems > completely unreliable. The load > > I'm applying is constant. > > I can't speak to the details of the > thread/process use sampling model. Top > uses something called the "weighted cpu > percentage" by default; you can switch > to "unweighted" using the -C argument. The top > documentation fails to > document the semantics of the percentages, but > I suspect -C will give you more > of what you expect. The weighted CPU > measurement takes into account process > history, so it takes a while for sudden spike > in CPU use to be fully > reflected, and you may see seemingly > counter-intuitive results, such as the > appearance of greater than 100% CPU use. Try > out -C and see if you see > something that makes more sense? > It seems to work just fine with 1 CPU. Its equally useless with the -C option in SMP mode. Here's a snip from 'systat -vmstat 1' Proc:r p d s w Csw Trp Sys Int Sof Flt cow 10009 total 24 18353 1 129 156k 1 17108 wire 6: fdc0 7908 act 14: ata 0.4%Sys 0.4%Intr 0.0%User 0.0%Nice 99.2%Idl 7236 inact 20: em0 | | | | | | | | | | cache 6000 21: em1 473456 free 5 24: bge 6000 interrupts per second and .4% interrupt usage. Clearly the tools don't work at all in SMP mode. I don't see how you can do development without measurement tools that work. DT __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com