Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Jun 2006 13:04:00 -0600
From:      Scott Long <scottl@samsco.org>
To:        danial_thom@yahoo.com
Cc:        freebsd-performance@freebsd.org, Robert Watson <rwatson@freebsd.org>, David Xu <davidxu@freebsd.org>
Subject:   Re: Initial 6.1 questions
Message-ID:  <448F0C20.3090800@samsco.org>
In-Reply-To: <20060613184336.60229.qmail@web33314.mail.mud.yahoo.com>
References:  <20060613184336.60229.qmail@web33314.mail.mud.yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Danial Thom wrote:
> 
> --- Robert Watson <rwatson@FreeBSD.org> wrote:
> 
> 
>>On Tue, 13 Jun 2006, Danial Thom wrote:
>>
>>
>>>Maybe someone can explain this output. The
>>
>>top line shows 99.6%idle. Is it 
>>
>>>just showing CPU 0s stats on the top line?
>>
>>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.
> 
> DT

Be aware that there was a significant change made to if_em
in 7-CURRENT in Jan 2006 to improve load performance.  It'll
probably get backported for 6.2, but you might consider
looking at it before you make up your mind on 6.1 performance.

Sscott




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?448F0C20.3090800>