On Wed, 2008-12-03 at 13:22 -0600, Hollis Blanchard wrote: > On Wed, 2008-12-03 at 19:06 +0200, Avi Kivity wrote: > > Hollis Blanchard wrote: > > > > > >> I'm not thrilled about the private exit timing statistics gathering, > > >> hopefully it can be morphed into the more general framework. > > >> > > > > > > Is there anything in particular you have in mind? I think it could be > > > generally useful, but since x86 has hardware support for performance > > > monitoring, oprofile will already give you more accurate information. Of > > > course, I don't think you could extract standard deviation from an > > > oprofile report, and that has been very useful for us because it can > > > tell us e.g. 99% of instruction emulation is handled in the minimum > > > amount of time, but 1% takes hundreds of ms. > > > > > > > kvmtrace is basically a bunch of trace_marker()s sprinkled around the > > code. the marker infrastructure allow you to attach a callback to the > > markers, where you can do the accounting. The nice thing it can be > > switched off at runtime, being replaced by a nop so > > compiled-in-but-disabled overhead is very low. > > However, we grab timestamps extremely early and late in the exit > handlers, in contexts from which it is not safe to call C code. This is > really important because we need to be able to measure the time spent in > the interrupt handler assembly. For x86 that may be confined to a simple > inline asm statement, but the code in > arch/powerpc/kvm/booke_interrupts.S is non-trivial and worth measuring. Well, I suppose we could save the timestamp to the vcpu, and call kvmtrace code later using that data. I'll stop now and let Christian comment when he's back. :) -- Hollis Blanchard IBM Linux Technology Center -- To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html