On Tue, Apr 01, 2014 at 05:26:40PM +0200, Paolo Bonzini wrote: > Another emulator speedup series, shaving up to 400 cycles (25%) off > RMW instructions. > > The performance of various instructions is now relatively flat: > > jump 919 (down from 2300) > move 1075 (down from 2700) > arith 1081 (down from 2600) > load 1267 (down from 2800, 1400 after previous round) > store 1213 (down from 2900, 1300 after previous round) > RMW 1310 (down from 3200, 1700 after previous round) > > The next low-hanging fruit is fetching instructions and initializing > the context. Similar optimizations to those done here could be made > for instruction fetch. > > Paolo Bonzini (6): > KVM: emulate: simplify writeback > KVM: emulate: abstract handling of memory operands > KVM: export mark_page_dirty_in_slot > KVM: emulate: introduce memory_prepare callback to speed up memory access > KVM: emulate: activate memory access optimization > KVM: emulate: extend memory access optimization to stores > > arch/x86/include/asm/kvm_emulate.h | 28 ++++++++++ > arch/x86/kvm/emulate.c | 107 +++++++++++++++++++++++++++---------- > arch/x86/kvm/x86.c | 67 +++++++++++++++++++++++ > include/linux/kvm_host.h | 6 +++ > virt/kvm/kvm_main.c | 17 ++---- > 5 files changed, 185 insertions(+), 40 deletions(-) > > -- > 1.8.3.1 Reviewed-by: Marcelo Tosatti <mtosatti@xxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html