CPU usage inaccuracy for taskqueue

Barney Cordoba barney_cordoba at yahoo.com
Sun Mar 1 07:46:24 PST 2009


--- On Sun, 3/1/09, Barney Cordoba <barney_cordoba at yahoo.com> wrote:

> From: Barney Cordoba <barney_cordoba at yahoo.com>
> Subject: CPU usage inaccuracy for taskqueue
> To: current at freebsd.org
> Date: Sunday, March 1, 2009, 10:22 AM
> I've been playing with the ige driver and as a test
> shifted the entire
> receive load to a task instead of doing it in the msix_rx
> routine by simply
> launching a receive task whenever an interrupt is
> generated. When doing so 
> and applying a moderate load, top readings show:
> 
> PID USERNAME  THR PRI NICE   SIZE    RES STATE  C   TIME  
> WCPU COMMAND   11 root        1 171 ki31     0K     8K RUN  
>  3   6:31 100.00% idle: cpu3  12 root        1 171 ki31    
> 0K     8K CPU2   2   6:30 100.00% idle: cpu2  13 root       
> 1 171 ki31     0K     8K CPU1   1   6:29 100.00% idle: cpu1
> 14 root        1 171 ki31     0K     8K CPU0   0   6:23
> 99.17% idle: cpu0
> 42 root        1 -68    -     0K     8K -      0   0:07 
> 7.47% igb1 taskq
> 
> clearly the cpu idle thread values aren't correct. This
> is the case in
> both 7.0 and 7.1. Since the point of my testing is to
> experiment with 
> schemes for spreading loads better, I'm not able to
> learn anything with
> the lack of usable feedback. Is there a simple fix?
> 
> Barney


Sorry for the ugly post. It looks ok in Yahoo and then gets all jumbled.
The gist of the top output:

 100.00% idle: cpu3
 100.00% idle: cpu2
 100.00% idle: cpu1
  99.17% idle: cpu0
   7.47% igb1 taskq

The task is show 7.5% usage and < 1% usage is shown by the cpu idle
threads.

Barney





      


More information about the freebsd-current mailing list