From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Zijlstra Subject: Re: [PATCH] Enhance perf to collect KVM guest os statistics from host side Date: Tue, 23 Mar 2010 16:23:01 +0100 Message-ID: <1269357781.5109.86.camel@twins> References: <1268717232.2813.36.camel@localhost> <1268969929.2813.184.camel@localhost> <20100319082122.GE12576@elte.hu> <20100319172903.GI13108@8bytes.org> <20100321184300.GB25922@elte.hu> <20100322101451.GK13108@8bytes.org> <20100322105927.GB3483@elte.hu> <20100322114744.GC1940@8bytes.org> <878w9jdu7m.fsf@basil.nowhere.org> <20100323141008.GE4066@ghostprotocols.net> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8BIT Cc: Andi Kleen , Soeren Sandmann , Joerg Roedel , Ingo Molnar , "Zhang, Yanmin" , Avi Kivity , Sheng Yang , linux-kernel@vger.kernel.org, kvm@vger.kernel.org, Marcelo Tosatti , Jes Sorensen , Gleb Natapov , Zachary Amsden , zhiteng.huang@intel.com, Fr??d??ric Weisbecker , Pekka Enberg To: Arnaldo Carvalho de Melo Return-path: In-Reply-To: <20100323141008.GE4066@ghostprotocols.net> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On Tue, 2010-03-23 at 11:10 -0300, Arnaldo Carvalho de Melo wrote: > Em Tue, Mar 23, 2010 at 02:49:01PM +0100, Andi Kleen escreveu: > > Soeren Sandmann writes: > > > To fix that problem, it seems like we need some way to have python > > > export what is going on. Maybe the same mechanism could be used to > > > both access what is going on in qemu and python. > > > > oprofile already has an interface to let JITs export > > information about the JITed code. C Python is not a JIT, > > but presumably one of the python JITs could do it. > > > > http://oprofile.sourceforge.net/doc/devel/index.html > > > > I know it's not envogue anymore and you won't be a approved > > cool kid if you do, but you could just use oprofile? > > perf also has supports for this and Pekka Enberg's jato uses it: > > http://penberg.blogspot.com/2009/06/jato-has-profiler.html Right, we need to move that into a library though (always meant to do that, never got around to doing it). That way the app can link against a dso with weak empty stubs and have perf record LD_PRELOAD a version that has a suitable implementation. That all has the advantage of not exposing the actual interface like we do now.