Per CPU cpu-statistics under SMP

John Baldwin jhb at freebsd.org
Fri Apr 14 14:32:37 UTC 2006


On Friday 14 April 2006 06:38, Marco van Tol wrote:
> On Thu, Apr 13, 2006 at 10:20:40AM -0400, John Baldwin wrote:
> > On Wednesday 12 April 2006 17:50, Marco van Tol wrote:
> > > Hi there,
> > > 
> > > My apologies if this is the wrong list to ask this kind of question.
> > > I would appreciate a pointer to the correct list if it is please. :)
> > > 
> > > I noticed in the code for gkrellm /usr/ports/sysutils/gkrellm2 that SMP
> > > per-cpu statistics were not yet supported under FreeBSD, and decided to
> > > check whether I could add that.  (I'm running a (dual-core) Athlon64 X2
> > > with FreeBSD 6.1-PRERELEASE)
> > > I can't find sample code and/or documentation on how to acquire that
> > > information from the kernel.
> 
> [...]
> 
> > > Is there an interface under FreeBSD to acquire the necessary per-cpu
> > > statistics?
> > 
> > They don't exist currently.  I have a patch to make the stats per-CPU
> > for performance reasons (though it only helps out on systems with lots
> > of CPUs (like 10) and hurts on systems with fewer CPUs (like 4)).  It
> > doesn't include a sysctl to get the per-CPU stats, but I could add one.
> 
> OK, that I could use to get started on the code for adding per-CPU stats to
> gkrellm under FreeBSD.  Is the patch against FreeBSD CURRENT?
> 
> Then if the per-CPU stats code hits the STABLE trunk, it's likely to be only
> a few changes to what I did perhaps. Or am I running a bit to far ahead
> here? :)
> 
> Is the patch in available your home area on www.freebsd.org?

An early one but it doesn't export the data to userland yet.  I need to
figure out what interface to use for that.  I could have the cp_time
sysctl just include the CPU arrays after the global array and key
off the passed in length to determine if they should be included or not.

-- 
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 freebsd-hackers mailing list