Date: Fri, 21 Mar 2008 19:59:50 -0700 (PDT) From: Barney Cordoba <barney_cordoba@yahoo.com> To: Julian Elischer <julian@elischer.org> Cc: current@freebsd.org Subject: Re: kvm_read() vs ioctl performance Message-ID: <494618.95957.qm@web63906.mail.re1.yahoo.com> In-Reply-To: <47E46682.4020403@elischer.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--- Julian Elischer <julian@elischer.org> wrote: > 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. The app is portable, and I'd prefer not to have different methods for LINUX and FreeBSD. When you say "coherent", what exactly do you mean? 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?494618.95957.qm>