Date: Fri, 21 Mar 2008 18:53:06 -0700 From: Julian Elischer <julian@elischer.org> To: Barney Cordoba <barney_cordoba@yahoo.com> Cc: current@freebsd.org Subject: Re: kvm_read() vs ioctl performance Message-ID: <47E46682.4020403@elischer.org> In-Reply-To: <817070.5892.qm@web63911.mail.re1.yahoo.com> References: <817070.5892.qm@web63911.mail.re1.yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Barney Cordoba wrote: > --- Julian Elischer <julian@elischer.org> wrote: > >> Barney Cordoba wrote: >>> I have an app which reads stats from the kernel >>> periodically, and there can be a lot of >> iterations, >>> sometimes 20,000 or more. I'm thinking of >> converting >>> from an ioctl method to kvm_read(). KVM is >> certainly >>> simpler, but its not clear what overhead is >> involved, >>> since kvm_read() likely has to call the kernel >> also. >>> Does anyone have a handle on the difference in >>> overhead, assuming that the ioctl call is to a >> module >>> which does nothing more than copy the data and >> return? >> >> tried a shared memory page? > > No, but I built a test and kvm_read is 70 times > faster, in > case anyone is interested. cool.. the only downside is that we are trying to get away from kvm direct access. (which is why a shared page might give the same result with a stable API which is not libkvm... BTW on an SMP machine you have no way to ensure that your stats are coherent if you use libkvm. > > Barney > > > ____________________________________________________________________________________ > Never miss a thing. Make Yahoo your home page. > http://www.yahoo.com/r/hs
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47E46682.4020403>