博客已迁移,新博客地址:https://www.wxtechblog.com
在KVM虚拟机中运行mysql,发现与ESX虚拟机中比较,性能有些差。用sysbench测试KVM虚拟机中的mysql,TPS刚刚到1500级别。性能如图:
使用perf命令跟踪KVM虚拟机对应的进程,情况如下:
从图中可以看出,这台虚拟机的page_fault占比较高,其次是__GI__ioctl,而sys_poll虽然占比高,却无需关注,因为即使虚拟机是空闲状态,sys_poll也会高。
使用perf跟踪kvm事件可以看到情形如图:
从图中来看,发生次数频繁的事件主要是kvm_page_fault,kvm_apic,kvm_pio,kvm_entry,kvm_exit,kvm_apic_ipi,kvm_apic_accept_irq。
kvm_entry和kvm_exit是进入退出虚拟机状态的事件,这两个事件主要是由其它事件引发的副作用,不需过多关注。
kvm_apic_ipi,kvm_apic_accept_irq是中断相关的