Re: Problem with shared L2 cache
On Fri, Jan 22, 2010 at 04:31:50PM +0200, Hristo Tomov wrote: > Hello! > > I have following problem with KVM. I have quad-core processor > Xeon X7350 ( 8MB L2 cache ). The processor shares 4 MB L2 cache on two > cores. By XEN emulation the guest system have 4 MB cache at disposal. > Cache information is meaningless in virtual environment. Your performance problem lies somewhere else. Trying -cpu host is a good idea nevertheless. -- Gleb. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Problem with shared L2 cache
You can add the option "-cpu host" to KVM. Then you get the same cache size information as your host has. Robert On 01/22/10 15:31, Hristo Tomov wrote: > Hello! > > I have following problem with KVM. I have quad-core processor > Xeon X7350 ( 8MB L2 cache ). The processor shares 4 MB L2 cache on two > cores. By XEN emulation the guest system have 4 MB cache at disposal. > > xen guest: cat /proc/cpuinfo > > processor: 3 > vendor_id: GenuineIntel > cpu family: 6 > model: 15 > model name: Intel(R) Xeon(R) CPU X7350 @ 2.93GHz > stepping: 11 > cpu MHz: 2932.026 > cache size: 4096 KB > fpu: yes > fpu_exception: yes > cpuid level: 10 > wp: yes > flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat clflush dts mmx fxsr sse sse2 ss syscall nx lm > constant_tsc pni ds_cpl cx16 xtpr lahf_lm > bogomips: 5865.67 > clflush size: 64 > cache_alignment: 64 > address sizes: 40 bits physical, 48 bits virtual > power management: > > By KVM in the guest system have 2 MB cache at disposal. > > kvm guest: cat /proc/cpuinfo > > processor : 3 > vendor_id : GenuineIntel > cpu family : 6 > model : 6 > model name : QEMU Virtual CPU version 0.9.1 > stepping: 3 > cpu MHz : 2932.026 > cache size : 2048 KB > fpu : yes > fpu_exception : yes > cpuid level : 2 > wp : yes > flags : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca > cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx lm pni > bogomips: 5861.69 > clflush size: 64 > cache_alignment : 64 > address sizes : 40 bits physical, 48 bits virtual > power management: > > On specific loads with the same number of processors, this difference > in the cache size leads to negative results. The productivity of the > KVM virtual machine shows 2 - 5 times worse results in comparison with > XEN virtual machine. > > > Host: > > cpu: Intel(R) Xeon(R) CPU X7350 @ 2.93GHz > os: Centos 5.4 x86_64 > kvm:kvm-83-105.el5_4.13 > kernel:kernel-2.6.18-164.10.1.el5 > kernel arch:x86_64 > > Guest: > > os: Centos 5.4 x86_64 > qemu command: /usr/libexec/qemu-kvm -S -M pc -m 4096 -smp 4 -name > centos -uuid 17136bf5-a7a3-0323-7e9b-90ec5aa06cdb > -no-kvm-pit-reinjection -monitor pty -pidfile > /var/run/libvirt/qemu//centos.pid -boot c -drive > file=/kvm/centos.img,if=virtio,index=0,boot=on,cache=none -net > nic,macaddr=52:54:00:43:81:4f,vlan=0,model=virtio -net > tap,fd=14,script=,vlan=0,ifname=vnet0 -serial pty -parallel none -usb > -vnc 127.0.0.1:0 -k en-us > > Host CPU: > processor: 0 > vendor_id: GenuineIntel > cpu family: 6 > model: 15 > model name: Intel(R) Xeon(R) CPU X7350 @ 2.93GHz > stepping: 11 > cpu MHz: 2931.962 > cache size: 4096 KB > physical id: 3 > siblings: 4 > core id: 0 > cpu cores: 4 > apicid: 12 > fpu: yes > fpu_exception: yes > cpuid level: 10 > wp: yes > flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm > bogomips: 5863.92 > clflush size: 64 > cache_alignment: 64 > address sizes: 40 bits physical, 48 bits virtual > power management: > > processor: 1 > vendor_id: GenuineIntel > cpu family: 6 > model: 15 > model name: Intel(R) Xeon(R) CPU X7350 @ 2.93GHz > stepping: 11 > cpu MHz: 2931.962 > cache size: 4096 KB > physical id: 8 > siblings: 4 > core id: 0 > cpu cores: 4 > apicid: 32 > fpu: yes > fpu_exception: yes > cpuid level: 10 > wp: yes > flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm > bogomips: 5863.11 > clflush size: 64 > cache_alignment: 64 > address sizes: 40 bits physical, 48 bits virtual > power management: > > processor : 2 > vendor_id : GenuineIntel > cpu family : 6 > cpu family : 6 > model : 15 > model name : Intel(R) Xeon(R) CPU X7350 @ 2.93GHz > stepping: 11 > cpu MHz : 2931.962 > cache size : 4096 KB > physical id : 4 > siblings: 4 > core id : 0 > cpu cores : 4 > apicid : 16 > fpu : yes > fpu_exception : yes > cpuid level : 10 > wp : yes > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge > mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall > nx lm constant_tsc pni monitor ds_cpl vm > x est
Problem with shared L2 cache
Hello! I have following problem with KVM. I have quad-core processor Xeon X7350 ( 8MB L2 cache ). The processor shares 4 MB L2 cache on two cores. By XEN emulation the guest system have 4 MB cache at disposal. xen guest: cat /proc/cpuinfo processor: 3 vendor_id: GenuineIntel cpu family: 6 model: 15 model name: Intel(R) Xeon(R) CPU X7350 @ 2.93GHz stepping: 11 cpu MHz: 2932.026 cache size: 4096 KB fpu: yes fpu_exception: yes cpuid level: 10 wp: yes flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts mmx fxsr sse sse2 ss syscall nx lm constant_tsc pni ds_cpl cx16 xtpr lahf_lm bogomips: 5865.67 clflush size: 64 cache_alignment: 64 address sizes: 40 bits physical, 48 bits virtual power management: By KVM in the guest system have 2 MB cache at disposal. kvm guest: cat /proc/cpuinfo processor : 3 vendor_id : GenuineIntel cpu family : 6 model : 6 model name : QEMU Virtual CPU version 0.9.1 stepping: 3 cpu MHz : 2932.026 cache size : 2048 KB fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx lm pni bogomips: 5861.69 clflush size: 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: On specific loads with the same number of processors, this difference in the cache size leads to negative results. The productivity of the KVM virtual machine shows 2 - 5 times worse results in comparison with XEN virtual machine. Host: cpu: Intel(R) Xeon(R) CPU X7350 @ 2.93GHz os: Centos 5.4 x86_64 kvm:kvm-83-105.el5_4.13 kernel:kernel-2.6.18-164.10.1.el5 kernel arch:x86_64 Guest: os: Centos 5.4 x86_64 qemu command: /usr/libexec/qemu-kvm -S -M pc -m 4096 -smp 4 -name centos -uuid 17136bf5-a7a3-0323-7e9b-90ec5aa06cdb -no-kvm-pit-reinjection -monitor pty -pidfile /var/run/libvirt/qemu//centos.pid -boot c -drive file=/kvm/centos.img,if=virtio,index=0,boot=on,cache=none -net nic,macaddr=52:54:00:43:81:4f,vlan=0,model=virtio -net tap,fd=14,script=,vlan=0,ifname=vnet0 -serial pty -parallel none -usb -vnc 127.0.0.1:0 -k en-us Host CPU: processor: 0 vendor_id: GenuineIntel cpu family: 6 model: 15 model name: Intel(R) Xeon(R) CPU X7350 @ 2.93GHz stepping: 11 cpu MHz: 2931.962 cache size: 4096 KB physical id: 3 siblings: 4 core id: 0 cpu cores: 4 apicid: 12 fpu: yes fpu_exception: yes cpuid level: 10 wp: yes flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm bogomips: 5863.92 clflush size: 64 cache_alignment: 64 address sizes: 40 bits physical, 48 bits virtual power management: processor: 1 vendor_id: GenuineIntel cpu family: 6 model: 15 model name: Intel(R) Xeon(R) CPU X7350 @ 2.93GHz stepping: 11 cpu MHz: 2931.962 cache size: 4096 KB physical id: 8 siblings: 4 core id: 0 cpu cores: 4 apicid: 32 fpu: yes fpu_exception: yes cpuid level: 10 wp: yes flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm bogomips: 5863.11 clflush size: 64 cache_alignment: 64 address sizes: 40 bits physical, 48 bits virtual power management: processor : 2 vendor_id : GenuineIntel cpu family : 6 cpu family : 6 model : 15 model name : Intel(R) Xeon(R) CPU X7350 @ 2.93GHz stepping: 11 cpu MHz : 2931.962 cache size : 4096 KB physical id : 4 siblings: 4 core id : 0 cpu cores : 4 apicid : 16 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vm x est tm2 cx16 xtpr lahf_lm bogomips: 5863.10 clflush size: 64 clflush size: 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: processor : 3 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Xeon(R) CPU X7350 @ 2.93GHz stepping: 11 cpu MHz : 2931.962 cache size : 4096 KB physical id : 15 siblings: 4 core id