cvs commit: src/sys/i386/i386 apic_vector.s mp_machdep.c src/sys/i386/include smptests.h

John Baldwin jhb at FreeBSD.org
Wed Sep 28 11:50:20 PDT 2005


On Wednesday 28 September 2005 02:04 pm, John Baldwin wrote:
> jhb         2005-09-28 18:04:11 UTC
>
>   FreeBSD src repository
>
>   Modified files:
>     sys/i386/i386        apic_vector.s mp_machdep.c
>     sys/i386/include     smptests.h
>   Log:
>   Add interrupt counters for IPIs.  By default they are disabled, but they
>   can be enabled by enabling COUNT_IPIS in smptests.h.  When enabled, each
>   CPU provides an interrupt counter for nearly all of the IPIs it receives
>   (IPI_STOP currently doesn't have a counter) that can be examined using
>   vmstat -i, etc.
>
>   MFC after:      3 days
>   Requested by:   rwatson

Sample output:

> vmstat -i
interrupt                          total       rate
irq4: sio0                           280          0
irq6: fdc0                             7          0
irq14: ata0                           37          0
irq19: fxp0 uhci0                  17033          0
irq23: ahc0 ahc1                  138407          1
cpu0: timer                    148380184       2000
cpu0: invltlb                       7072          0
cpu0: invlrng                      83176          1
cpu0: invlpg                       14355          0
cpu1: invltlb                       9413          0
cpu1: invlrng                      79973          1
cpu1: invlpg                       17284          0
cpu2: invltlb                       7225          0
cpu2: invlrng                      78156          1
cpu2: invlpg                       10619          0
cpu3: invltlb                       7384          0
cpu3: invlrng                      81039          1
cpu3: invlpg                        9739          0
cpu2: timer                    148364410       2000
cpu3: timer                    148364409       2000
cpu1: timer                    148364409       2000
Total                          594034611       8008

This is after the box has been idle overnight.  During a -j 32 buildworld I 
saw it up as high as 1000 invlrng IPIs per second on all 4 CPUs.

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the cvs-src mailing list