Andrey Korolyov
2015-Mar-13 09:58 UTC
Re: [libvirt-users] Processor usage of qemu process.
On Fri, Mar 13, 2015 at 12:35 PM, Daniel P. Berrange <berrange@redhat.com> wrote:> On Fri, Mar 13, 2015 at 10:32:14AM +0100, Dominique Ramaekers wrote: >> Dear Daniel, my XML's: >> >> Note: It seems I was to quick, the Windows 8.1 isn't fixed... >> >> Windows Server 2015 R2 >> >> <domain type='kvm' id='146'> >> <name>CmsrvAPP2</name> >> <uuid>02c5daef-662a-85ba-7291-485118badc64</uuid> >> <memory unit='KiB'>3149824</memory> >> <currentMemory unit='KiB'>3149824</currentMemory> >> <memoryBacking> >> <hugepages/> >> </memoryBacking> >> <vcpu placement='static'>4</vcpu> >> <resource> >> <partition>/machine</partition> >> </resource> >> <os> >> <type arch='x86_64' machine='pc-i440fx-trusty'>hvm</type> >> <boot dev='hd'/> >> <boot dev='cdrom'/> >> <bootmenu enable='yes'/> >> </os> >> <features> >> <acpi/> >> <apic/> >> <pae/> >> </features> >> <cpu mode='custom' match='exact'> >> <model fallback='allow'>Westmere</model> >> <vendor>Intel</vendor> >> <feature policy='require' name='pbe'/> >> <feature policy='require' name='rdtscp'/> >> <feature policy='require' name='est'/> >> <feature policy='require' name='vmx'/> >> <feature policy='require' name='ds'/> >> <feature policy='require' name='smx'/> >> <feature policy='require' name='ss'/> >> <feature policy='require' name='vme'/> >> <feature policy='require' name='dtes64'/> >> <feature policy='require' name='tm2'/> >> <feature policy='require' name='ht'/> >> <feature policy='require' name='dca'/> >> <feature policy='require' name='pcid'/> >> <feature policy='require' name='tm'/> >> <feature policy='require' name='pdcm'/> >> <feature policy='require' name='pdpe1gb'/> >> <feature policy='require' name='ds_cpl'/> >> <feature policy='require' name='pclmuldq'/> >> <feature policy='require' name='xtpr'/> >> <feature policy='require' name='acpi'/> >> <feature policy='require' name='monitor'/> >> </cpu> >> <clock offset='localtime'/> >> <on_poweroff>destroy</on_poweroff> >> <on_reboot>restart</on_reboot> >> <on_crash>restart</on_crash> >> <devices> >> <emulator>/usr/bin/kvm-spice</emulator> >> <disk type='file' device='cdrom'> >> <driver name='qemu' type='raw' cache='none'/> >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/virtiodrivers.iso'/> >> <target dev='hda' bus='ide'/> >> <readonly/> >> <alias name='ide0-0-0'/> >> <address type='drive' controller='0' bus='0' target='0' unit='0'/> >> </disk> >> <disk type='file' device='cdrom'> >> <driver name='qemu' type='raw' cache='none'/> >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/WIN2012R2.iso'/> >> <target dev='hdc' bus='ide'/> >> <readonly/> >> <shareable/> >> <alias name='ide0-1-0'/> >> <address type='drive' controller='0' bus='1' target='0' unit='0'/> >> </disk> >> <disk type='file' device='disk'> >> <driver name='qemu' type='raw' cache='none'/> >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/CmsrvAPP2.raw'/> >> <target dev='vda' bus='virtio'/> >> <alias name='virtio-disk0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> >> </disk> >> <controller type='ide' index='0'> >> <alias name='ide0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> >> </controller> >> <controller type='usb' index='0'> >> <alias name='usb0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> >> </controller> >> <controller type='pci' index='0' model='pci-root'> >> <alias name='pci.0'/> >> </controller> >> <interface type='bridge'> >> <mac address='52:54:00:d2:40:25'/> >> <source bridge='br0'/> >> <target dev='vnet1'/> >> <model type='virtio'/> >> <alias name='net0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> >> </interface> >> <serial type='pty'> >> <source path='/dev/pts/2'/> >> <target port='0'/> >> <alias name='serial0'/> >> </serial> >> <console type='pty' tty='/dev/pts/2'> >> <source path='/dev/pts/2'/> >> <target type='serial' port='0'/> >> <alias name='serial0'/> >> </console> >> <input type='tablet' bus='usb'> >> <alias name='input0'/> >> </input> >> <input type='mouse' bus='ps2'/> >> <input type='keyboard' bus='ps2'/> >> <graphics type='vnc' port='5902' autoport='yes' listen='127.0.0.1'> >> <listen type='address' address='127.0.0.1'/> >> </graphics> >> <sound model='ich6'> >> <alias name='sound0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> >> </sound> >> <video> >> <model type='vmvga' vram='9216' heads='1'/> >> <alias name='video0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> >> </video> >> <memballoon model='virtio'> >> <alias name='balloon0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> >> </memballoon> >> </devices> >> <seclabel type='dynamic' model='apparmor' relabel='yes'> >> <label>libvirt-02c5daef-662a-85ba-7291-485118badc64</label> >> <imagelabel>libvirt-02c5daef-662a-85ba-7291-485118badc64</imagelabel> >> </seclabel> >> </domain> > > The USB tablet could be a culprint, as could the choice of video mode. > > I'd suggest that you want to install the QXL video driver, and setup > SPICE instead of VNC, along with the SPICE guest agent. This gives a > much better performing graphics layer, and better performing mouse. > instead of the USB tablet which is known to have high CPU cost. > > Regards, > DanielThere is none of enlightenment timer features enabled, I`d suggest to start fixing the issue by adding them in the config. USB tablet is a great problem too for a generated additional workload in idle, though usb3 tablet connection results in much lower cpu consumption than usb2.
Dominique Ramaekers
2015-Mar-13 10:22 UTC
Re: [libvirt-users] Processor usage of qemu process.
Spice seems to be doing the trick... Thanks a lot! The tablet isn't removed or changed yet. I'll first do a follow up of the spice before doing that... How do I enable the enlightenment timer feature? I can't seem to find it in the xml-doc's... -----Oorspronkelijk bericht----- Van: Andrey Korolyov [mailto:andrey@xdel.ru] Verzonden: vrijdag 13 maart 2015 10:59 Aan: Daniel P. Berrange CC: Dominique Ramaekers; libvirt-users@redhat.com Onderwerp: Re: [libvirt-users] Processor usage of qemu process. On Fri, Mar 13, 2015 at 12:35 PM, Daniel P. Berrange <berrange@redhat.com> wrote:> On Fri, Mar 13, 2015 at 10:32:14AM +0100, Dominique Ramaekers wrote: >> Dear Daniel, my XML's: >> >> Note: It seems I was to quick, the Windows 8.1 isn't fixed... >> >> Windows Server 2015 R2 >> >> <domain type='kvm' id='146'> >> <name>CmsrvAPP2</name> >> <uuid>02c5daef-662a-85ba-7291-485118badc64</uuid> >> <memory unit='KiB'>3149824</memory> >> <currentMemory unit='KiB'>3149824</currentMemory> >> <memoryBacking> >> <hugepages/> >> </memoryBacking> >> <vcpu placement='static'>4</vcpu> >> <resource> >> <partition>/machine</partition> >> </resource> >> <os> >> <type arch='x86_64' machine='pc-i440fx-trusty'>hvm</type> >> <boot dev='hd'/> >> <boot dev='cdrom'/> >> <bootmenu enable='yes'/> >> </os> >> <features> >> <acpi/> >> <apic/> >> <pae/> >> </features> >> <cpu mode='custom' match='exact'> >> <model fallback='allow'>Westmere</model> >> <vendor>Intel</vendor> >> <feature policy='require' name='pbe'/> >> <feature policy='require' name='rdtscp'/> >> <feature policy='require' name='est'/> >> <feature policy='require' name='vmx'/> >> <feature policy='require' name='ds'/> >> <feature policy='require' name='smx'/> >> <feature policy='require' name='ss'/> >> <feature policy='require' name='vme'/> >> <feature policy='require' name='dtes64'/> >> <feature policy='require' name='tm2'/> >> <feature policy='require' name='ht'/> >> <feature policy='require' name='dca'/> >> <feature policy='require' name='pcid'/> >> <feature policy='require' name='tm'/> >> <feature policy='require' name='pdcm'/> >> <feature policy='require' name='pdpe1gb'/> >> <feature policy='require' name='ds_cpl'/> >> <feature policy='require' name='pclmuldq'/> >> <feature policy='require' name='xtpr'/> >> <feature policy='require' name='acpi'/> >> <feature policy='require' name='monitor'/> >> </cpu> >> <clock offset='localtime'/> >> <on_poweroff>destroy</on_poweroff> >> <on_reboot>restart</on_reboot> >> <on_crash>restart</on_crash> >> <devices> >> <emulator>/usr/bin/kvm-spice</emulator> >> <disk type='file' device='cdrom'> >> <driver name='qemu' type='raw' cache='none'/> >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/virtiodrivers.iso'/> >> <target dev='hda' bus='ide'/> >> <readonly/> >> <alias name='ide0-0-0'/> >> <address type='drive' controller='0' bus='0' target='0' unit='0'/> >> </disk> >> <disk type='file' device='cdrom'> >> <driver name='qemu' type='raw' cache='none'/> >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/WIN2012R2.iso'/> >> <target dev='hdc' bus='ide'/> >> <readonly/> >> <shareable/> >> <alias name='ide0-1-0'/> >> <address type='drive' controller='0' bus='1' target='0' unit='0'/> >> </disk> >> <disk type='file' device='disk'> >> <driver name='qemu' type='raw' cache='none'/> >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/CmsrvAPP2.raw'/> >> <target dev='vda' bus='virtio'/> >> <alias name='virtio-disk0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> >> </disk> >> <controller type='ide' index='0'> >> <alias name='ide0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> >> </controller> >> <controller type='usb' index='0'> >> <alias name='usb0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> >> </controller> >> <controller type='pci' index='0' model='pci-root'> >> <alias name='pci.0'/> >> </controller> >> <interface type='bridge'> >> <mac address='52:54:00:d2:40:25'/> >> <source bridge='br0'/> >> <target dev='vnet1'/> >> <model type='virtio'/> >> <alias name='net0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> >> </interface> >> <serial type='pty'> >> <source path='/dev/pts/2'/> >> <target port='0'/> >> <alias name='serial0'/> >> </serial> >> <console type='pty' tty='/dev/pts/2'> >> <source path='/dev/pts/2'/> >> <target type='serial' port='0'/> >> <alias name='serial0'/> >> </console> >> <input type='tablet' bus='usb'> >> <alias name='input0'/> >> </input> >> <input type='mouse' bus='ps2'/> >> <input type='keyboard' bus='ps2'/> >> <graphics type='vnc' port='5902' autoport='yes' listen='127.0.0.1'> >> <listen type='address' address='127.0.0.1'/> >> </graphics> >> <sound model='ich6'> >> <alias name='sound0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> >> </sound> >> <video> >> <model type='vmvga' vram='9216' heads='1'/> >> <alias name='video0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> >> </video> >> <memballoon model='virtio'> >> <alias name='balloon0'/> >> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> >> </memballoon> >> </devices> >> <seclabel type='dynamic' model='apparmor' relabel='yes'> >> <label>libvirt-02c5daef-662a-85ba-7291-485118badc64</label> >> <imagelabel>libvirt-02c5daef-662a-85ba-7291-485118badc64</imagelabel> >> </seclabel> >> </domain> > > The USB tablet could be a culprint, as could the choice of video mode. > > I'd suggest that you want to install the QXL video driver, and setup > SPICE instead of VNC, along with the SPICE guest agent. This gives a > much better performing graphics layer, and better performing mouse. > instead of the USB tablet which is known to have high CPU cost. > > Regards, > DanielThere is none of enlightenment timer features enabled, I`d suggest to start fixing the issue by adding them in the config. USB tablet is a great problem too for a generated additional workload in idle, though usb3 tablet connection results in much lower cpu consumption than usb2.
Andrey Korolyov
2015-Mar-13 10:27 UTC
Re: [libvirt-users] Processor usage of qemu process.
For a reference, http://blog.wikichoon.com/2014/07/enabling-hyper-v-enlightenments-with-kvm.html
Daniel P. Berrange
2015-Mar-13 10:39 UTC
Re: [libvirt-users] Processor usage of qemu process.
On Fri, Mar 13, 2015 at 11:22:45AM +0100, Dominique Ramaekers wrote:> Spice seems to be doing the trick... Thanks a lot! > > The tablet isn't removed or changed yet. I'll first do a follow up of > the spice before doing that...Assuming you've enabled the SPICE guest agent, then it should not use the USB tablet, even if it is present. Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
Daniel P. Berrange
2015-Mar-13 10:40 UTC
Re: [libvirt-users] Processor usage of qemu process.
On Fri, Mar 13, 2015 at 12:58:32PM +0300, Andrey Korolyov wrote:> On Fri, Mar 13, 2015 at 12:35 PM, Daniel P. Berrange > <berrange@redhat.com> wrote: > > On Fri, Mar 13, 2015 at 10:32:14AM +0100, Dominique Ramaekers wrote: > >> Dear Daniel, my XML's: > >> > >> Note: It seems I was to quick, the Windows 8.1 isn't fixed... > >> > >> Windows Server 2015 R2 > >> > >> <domain type='kvm' id='146'> > >> <name>CmsrvAPP2</name> > >> <uuid>02c5daef-662a-85ba-7291-485118badc64</uuid> > >> <memory unit='KiB'>3149824</memory> > >> <currentMemory unit='KiB'>3149824</currentMemory> > >> <memoryBacking> > >> <hugepages/> > >> </memoryBacking> > >> <vcpu placement='static'>4</vcpu> > >> <resource> > >> <partition>/machine</partition> > >> </resource> > >> <os> > >> <type arch='x86_64' machine='pc-i440fx-trusty'>hvm</type> > >> <boot dev='hd'/> > >> <boot dev='cdrom'/> > >> <bootmenu enable='yes'/> > >> </os> > >> <features> > >> <acpi/> > >> <apic/> > >> <pae/> > >> </features> > >> <cpu mode='custom' match='exact'> > >> <model fallback='allow'>Westmere</model> > >> <vendor>Intel</vendor> > >> <feature policy='require' name='pbe'/> > >> <feature policy='require' name='rdtscp'/> > >> <feature policy='require' name='est'/> > >> <feature policy='require' name='vmx'/> > >> <feature policy='require' name='ds'/> > >> <feature policy='require' name='smx'/> > >> <feature policy='require' name='ss'/> > >> <feature policy='require' name='vme'/> > >> <feature policy='require' name='dtes64'/> > >> <feature policy='require' name='tm2'/> > >> <feature policy='require' name='ht'/> > >> <feature policy='require' name='dca'/> > >> <feature policy='require' name='pcid'/> > >> <feature policy='require' name='tm'/> > >> <feature policy='require' name='pdcm'/> > >> <feature policy='require' name='pdpe1gb'/> > >> <feature policy='require' name='ds_cpl'/> > >> <feature policy='require' name='pclmuldq'/> > >> <feature policy='require' name='xtpr'/> > >> <feature policy='require' name='acpi'/> > >> <feature policy='require' name='monitor'/> > >> </cpu> > >> <clock offset='localtime'/> > >> <on_poweroff>destroy</on_poweroff> > >> <on_reboot>restart</on_reboot> > >> <on_crash>restart</on_crash> > >> <devices> > >> <emulator>/usr/bin/kvm-spice</emulator> > >> <disk type='file' device='cdrom'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/virtiodrivers.iso'/> > >> <target dev='hda' bus='ide'/> > >> <readonly/> > >> <alias name='ide0-0-0'/> > >> <address type='drive' controller='0' bus='0' target='0' unit='0'/> > >> </disk> > >> <disk type='file' device='cdrom'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/WIN2012R2.iso'/> > >> <target dev='hdc' bus='ide'/> > >> <readonly/> > >> <shareable/> > >> <alias name='ide0-1-0'/> > >> <address type='drive' controller='0' bus='1' target='0' unit='0'/> > >> </disk> > >> <disk type='file' device='disk'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/CmsrvAPP2.raw'/> > >> <target dev='vda' bus='virtio'/> > >> <alias name='virtio-disk0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> > >> </disk> > >> <controller type='ide' index='0'> > >> <alias name='ide0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> > >> </controller> > >> <controller type='usb' index='0'> > >> <alias name='usb0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> > >> </controller> > >> <controller type='pci' index='0' model='pci-root'> > >> <alias name='pci.0'/> > >> </controller> > >> <interface type='bridge'> > >> <mac address='52:54:00:d2:40:25'/> > >> <source bridge='br0'/> > >> <target dev='vnet1'/> > >> <model type='virtio'/> > >> <alias name='net0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> > >> </interface> > >> <serial type='pty'> > >> <source path='/dev/pts/2'/> > >> <target port='0'/> > >> <alias name='serial0'/> > >> </serial> > >> <console type='pty' tty='/dev/pts/2'> > >> <source path='/dev/pts/2'/> > >> <target type='serial' port='0'/> > >> <alias name='serial0'/> > >> </console> > >> <input type='tablet' bus='usb'> > >> <alias name='input0'/> > >> </input> > >> <input type='mouse' bus='ps2'/> > >> <input type='keyboard' bus='ps2'/> > >> <graphics type='vnc' port='5902' autoport='yes' listen='127.0.0.1'> > >> <listen type='address' address='127.0.0.1'/> > >> </graphics> > >> <sound model='ich6'> > >> <alias name='sound0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> > >> </sound> > >> <video> > >> <model type='vmvga' vram='9216' heads='1'/> > >> <alias name='video0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> > >> </video> > >> <memballoon model='virtio'> > >> <alias name='balloon0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> > >> </memballoon> > >> </devices> > >> <seclabel type='dynamic' model='apparmor' relabel='yes'> > >> <label>libvirt-02c5daef-662a-85ba-7291-485118badc64</label> > >> <imagelabel>libvirt-02c5daef-662a-85ba-7291-485118badc64</imagelabel> > >> </seclabel> > >> </domain> > > > > The USB tablet could be a culprint, as could the choice of video mode. > > > > I'd suggest that you want to install the QXL video driver, and setup > > SPICE instead of VNC, along with the SPICE guest agent. This gives a > > much better performing graphics layer, and better performing mouse. > > instead of the USB tablet which is known to have high CPU cost. > > > > Regards, > > Daniel > > There is none of enlightenment timer features enabled, I`d suggest to > start fixing the issue by adding them in the config. USB tablet is a > great problem too for a generated additional workload in idle, though > usb3 tablet connection results in much lower cpu consumption than > usb2.The guest XML shown has not got either USB2 or USB3 controllers present, so the tablet will be operating in USB1 mode which is awful for performance Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
Dominique Ramaekers
2015-Mar-13 15:34 UTC
Re: [libvirt-users] Processor usage of qemu process.
Results ---------- First I want to show my appreciation to Daniel and Andrey. So thanks... I've implemented Spice, removed the touchpad and implemented enlightenment timer... PCVIRT1 with Windows 8.1 is on 5% host CPU usage... (OK) CmsrvAPP2 with Server 2012 R2 is still on 50% (Bummer...) A new freshly installed Server 2012 R2 with nothing activated or installed on gives 12% (Not completely happy) More tips are welcome.... See traceFlag T8038 section on https://pve.proxmox.com/wiki/Performance_Tweaks I've also noticed it on other sources... On the CmsrvAPP2 the SQL server is a SQL essential, so I have to figure out how to set the traceFlag on a SQL essential... -----Oorspronkelijk bericht----- Van: Daniel P. Berrange [mailto:berrange@redhat.com] Verzonden: vrijdag 13 maart 2015 11:41 Aan: Andrey Korolyov CC: Dominique Ramaekers; libvirt-users@redhat.com Onderwerp: Re: [libvirt-users] Processor usage of qemu process. On Fri, Mar 13, 2015 at 12:58:32PM +0300, Andrey Korolyov wrote:> On Fri, Mar 13, 2015 at 12:35 PM, Daniel P. Berrange > <berrange@redhat.com> wrote: > > On Fri, Mar 13, 2015 at 10:32:14AM +0100, Dominique Ramaekers wrote: > >> Dear Daniel, my XML's: > >> > >> Note: It seems I was to quick, the Windows 8.1 isn't fixed... > >> > >> Windows Server 2015 R2 > >> > >> <domain type='kvm' id='146'> > >> <name>CmsrvAPP2</name> > >> <uuid>02c5daef-662a-85ba-7291-485118badc64</uuid> > >> <memory unit='KiB'>3149824</memory> > >> <currentMemory unit='KiB'>3149824</currentMemory> > >> <memoryBacking> > >> <hugepages/> > >> </memoryBacking> > >> <vcpu placement='static'>4</vcpu> > >> <resource> > >> <partition>/machine</partition> > >> </resource> > >> <os> > >> <type arch='x86_64' machine='pc-i440fx-trusty'>hvm</type> > >> <boot dev='hd'/> > >> <boot dev='cdrom'/> > >> <bootmenu enable='yes'/> > >> </os> > >> <features> > >> <acpi/> > >> <apic/> > >> <pae/> > >> </features> > >> <cpu mode='custom' match='exact'> > >> <model fallback='allow'>Westmere</model> > >> <vendor>Intel</vendor> > >> <feature policy='require' name='pbe'/> > >> <feature policy='require' name='rdtscp'/> > >> <feature policy='require' name='est'/> > >> <feature policy='require' name='vmx'/> > >> <feature policy='require' name='ds'/> > >> <feature policy='require' name='smx'/> > >> <feature policy='require' name='ss'/> > >> <feature policy='require' name='vme'/> > >> <feature policy='require' name='dtes64'/> > >> <feature policy='require' name='tm2'/> > >> <feature policy='require' name='ht'/> > >> <feature policy='require' name='dca'/> > >> <feature policy='require' name='pcid'/> > >> <feature policy='require' name='tm'/> > >> <feature policy='require' name='pdcm'/> > >> <feature policy='require' name='pdpe1gb'/> > >> <feature policy='require' name='ds_cpl'/> > >> <feature policy='require' name='pclmuldq'/> > >> <feature policy='require' name='xtpr'/> > >> <feature policy='require' name='acpi'/> > >> <feature policy='require' name='monitor'/> > >> </cpu> > >> <clock offset='localtime'/> > >> <on_poweroff>destroy</on_poweroff> > >> <on_reboot>restart</on_reboot> > >> <on_crash>restart</on_crash> > >> <devices> > >> <emulator>/usr/bin/kvm-spice</emulator> > >> <disk type='file' device='cdrom'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/virtiodrivers.iso'/> > >> <target dev='hda' bus='ide'/> > >> <readonly/> > >> <alias name='ide0-0-0'/> > >> <address type='drive' controller='0' bus='0' target='0' unit='0'/> > >> </disk> > >> <disk type='file' device='cdrom'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/WIN2012R2.iso'/> > >> <target dev='hdc' bus='ide'/> > >> <readonly/> > >> <shareable/> > >> <alias name='ide0-1-0'/> > >> <address type='drive' controller='0' bus='1' target='0' unit='0'/> > >> </disk> > >> <disk type='file' device='disk'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/CmsrvAPP2.raw'/> > >> <target dev='vda' bus='virtio'/> > >> <alias name='virtio-disk0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> > >> </disk> > >> <controller type='ide' index='0'> > >> <alias name='ide0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> > >> </controller> > >> <controller type='usb' index='0'> > >> <alias name='usb0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> > >> </controller> > >> <controller type='pci' index='0' model='pci-root'> > >> <alias name='pci.0'/> > >> </controller> > >> <interface type='bridge'> > >> <mac address='52:54:00:d2:40:25'/> > >> <source bridge='br0'/> > >> <target dev='vnet1'/> > >> <model type='virtio'/> > >> <alias name='net0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> > >> </interface> > >> <serial type='pty'> > >> <source path='/dev/pts/2'/> > >> <target port='0'/> > >> <alias name='serial0'/> > >> </serial> > >> <console type='pty' tty='/dev/pts/2'> > >> <source path='/dev/pts/2'/> > >> <target type='serial' port='0'/> > >> <alias name='serial0'/> > >> </console> > >> <input type='tablet' bus='usb'> > >> <alias name='input0'/> > >> </input> > >> <input type='mouse' bus='ps2'/> > >> <input type='keyboard' bus='ps2'/> > >> <graphics type='vnc' port='5902' autoport='yes' listen='127.0.0.1'> > >> <listen type='address' address='127.0.0.1'/> > >> </graphics> > >> <sound model='ich6'> > >> <alias name='sound0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> > >> </sound> > >> <video> > >> <model type='vmvga' vram='9216' heads='1'/> > >> <alias name='video0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> > >> </video> > >> <memballoon model='virtio'> > >> <alias name='balloon0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> > >> </memballoon> > >> </devices> > >> <seclabel type='dynamic' model='apparmor' relabel='yes'> > >> <label>libvirt-02c5daef-662a-85ba-7291-485118badc64</label> > >> <imagelabel>libvirt-02c5daef-662a-85ba-7291-485118badc64</imagelabel> > >> </seclabel> > >> </domain> > > > > The USB tablet could be a culprint, as could the choice of video mode. > > > > I'd suggest that you want to install the QXL video driver, and setup > > SPICE instead of VNC, along with the SPICE guest agent. This gives a > > much better performing graphics layer, and better performing mouse. > > instead of the USB tablet which is known to have high CPU cost. > > > > Regards, > > Daniel > > There is none of enlightenment timer features enabled, I`d suggest to > start fixing the issue by adding them in the config. USB tablet is a > great problem too for a generated additional workload in idle, though > usb3 tablet connection results in much lower cpu consumption than > usb2.The guest XML shown has not got either USB2 or USB3 controllers present, so the tablet will be operating in USB1 mode which is awful for performance Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
Dominique Ramaekers
2015-Mar-13 15:56 UTC
Re: [libvirt-users] Processor usage of qemu process.
Small update: traceFlag T8038 => no improvement... -----Oorspronkelijk bericht----- Van: Dominique Ramaekers Verzonden: vrijdag 13 maart 2015 16:35 Aan: 'Daniel P. Berrange'; Andrey Korolyov CC: libvirt-users@redhat.com Onderwerp: RE: [libvirt-users] Processor usage of qemu process. Results ---------- First I want to show my appreciation to Daniel and Andrey. So thanks... I've implemented Spice, removed the touchpad and implemented enlightenment timer... PCVIRT1 with Windows 8.1 is on 5% host CPU usage... (OK) CmsrvAPP2 with Server 2012 R2 is still on 50% (Bummer...) A new freshly installed Server 2012 R2 with nothing activated or installed on gives 12% (Not completely happy) More tips are welcome.... See traceFlag T8038 section on https://pve.proxmox.com/wiki/Performance_Tweaks I've also noticed it on other sources... On the CmsrvAPP2 the SQL server is a SQL essential, so I have to figure out how to set the traceFlag on a SQL essential... -----Oorspronkelijk bericht----- Van: Daniel P. Berrange [mailto:berrange@redhat.com] Verzonden: vrijdag 13 maart 2015 11:41 Aan: Andrey Korolyov CC: Dominique Ramaekers; libvirt-users@redhat.com Onderwerp: Re: [libvirt-users] Processor usage of qemu process. On Fri, Mar 13, 2015 at 12:58:32PM +0300, Andrey Korolyov wrote:> On Fri, Mar 13, 2015 at 12:35 PM, Daniel P. Berrange > <berrange@redhat.com> wrote: > > On Fri, Mar 13, 2015 at 10:32:14AM +0100, Dominique Ramaekers wrote: > >> Dear Daniel, my XML's: > >> > >> Note: It seems I was to quick, the Windows 8.1 isn't fixed... > >> > >> Windows Server 2015 R2 > >> > >> <domain type='kvm' id='146'> > >> <name>CmsrvAPP2</name> > >> <uuid>02c5daef-662a-85ba-7291-485118badc64</uuid> > >> <memory unit='KiB'>3149824</memory> > >> <currentMemory unit='KiB'>3149824</currentMemory> > >> <memoryBacking> > >> <hugepages/> > >> </memoryBacking> > >> <vcpu placement='static'>4</vcpu> > >> <resource> > >> <partition>/machine</partition> > >> </resource> > >> <os> > >> <type arch='x86_64' machine='pc-i440fx-trusty'>hvm</type> > >> <boot dev='hd'/> > >> <boot dev='cdrom'/> > >> <bootmenu enable='yes'/> > >> </os> > >> <features> > >> <acpi/> > >> <apic/> > >> <pae/> > >> </features> > >> <cpu mode='custom' match='exact'> > >> <model fallback='allow'>Westmere</model> > >> <vendor>Intel</vendor> > >> <feature policy='require' name='pbe'/> > >> <feature policy='require' name='rdtscp'/> > >> <feature policy='require' name='est'/> > >> <feature policy='require' name='vmx'/> > >> <feature policy='require' name='ds'/> > >> <feature policy='require' name='smx'/> > >> <feature policy='require' name='ss'/> > >> <feature policy='require' name='vme'/> > >> <feature policy='require' name='dtes64'/> > >> <feature policy='require' name='tm2'/> > >> <feature policy='require' name='ht'/> > >> <feature policy='require' name='dca'/> > >> <feature policy='require' name='pcid'/> > >> <feature policy='require' name='tm'/> > >> <feature policy='require' name='pdcm'/> > >> <feature policy='require' name='pdpe1gb'/> > >> <feature policy='require' name='ds_cpl'/> > >> <feature policy='require' name='pclmuldq'/> > >> <feature policy='require' name='xtpr'/> > >> <feature policy='require' name='acpi'/> > >> <feature policy='require' name='monitor'/> > >> </cpu> > >> <clock offset='localtime'/> > >> <on_poweroff>destroy</on_poweroff> > >> <on_reboot>restart</on_reboot> > >> <on_crash>restart</on_crash> > >> <devices> > >> <emulator>/usr/bin/kvm-spice</emulator> > >> <disk type='file' device='cdrom'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/virtiodrivers.iso'/> > >> <target dev='hda' bus='ide'/> > >> <readonly/> > >> <alias name='ide0-0-0'/> > >> <address type='drive' controller='0' bus='0' target='0' unit='0'/> > >> </disk> > >> <disk type='file' device='cdrom'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/WIN2012R2.iso'/> > >> <target dev='hdc' bus='ide'/> > >> <readonly/> > >> <shareable/> > >> <alias name='ide0-1-0'/> > >> <address type='drive' controller='0' bus='1' target='0' unit='0'/> > >> </disk> > >> <disk type='file' device='disk'> > >> <driver name='qemu' type='raw' cache='none'/> > >> <source file='/var/lib/libvirt/images/poolCmsrvVH2/CmsrvAPP2.raw'/> > >> <target dev='vda' bus='virtio'/> > >> <alias name='virtio-disk0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> > >> </disk> > >> <controller type='ide' index='0'> > >> <alias name='ide0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> > >> </controller> > >> <controller type='usb' index='0'> > >> <alias name='usb0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> > >> </controller> > >> <controller type='pci' index='0' model='pci-root'> > >> <alias name='pci.0'/> > >> </controller> > >> <interface type='bridge'> > >> <mac address='52:54:00:d2:40:25'/> > >> <source bridge='br0'/> > >> <target dev='vnet1'/> > >> <model type='virtio'/> > >> <alias name='net0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> > >> </interface> > >> <serial type='pty'> > >> <source path='/dev/pts/2'/> > >> <target port='0'/> > >> <alias name='serial0'/> > >> </serial> > >> <console type='pty' tty='/dev/pts/2'> > >> <source path='/dev/pts/2'/> > >> <target type='serial' port='0'/> > >> <alias name='serial0'/> > >> </console> > >> <input type='tablet' bus='usb'> > >> <alias name='input0'/> > >> </input> > >> <input type='mouse' bus='ps2'/> > >> <input type='keyboard' bus='ps2'/> > >> <graphics type='vnc' port='5902' autoport='yes' listen='127.0.0.1'> > >> <listen type='address' address='127.0.0.1'/> > >> </graphics> > >> <sound model='ich6'> > >> <alias name='sound0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> > >> </sound> > >> <video> > >> <model type='vmvga' vram='9216' heads='1'/> > >> <alias name='video0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> > >> </video> > >> <memballoon model='virtio'> > >> <alias name='balloon0'/> > >> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> > >> </memballoon> > >> </devices> > >> <seclabel type='dynamic' model='apparmor' relabel='yes'> > >> <label>libvirt-02c5daef-662a-85ba-7291-485118badc64</label> > >> <imagelabel>libvirt-02c5daef-662a-85ba-7291-485118badc64</imagelabel> > >> </seclabel> > >> </domain> > > > > The USB tablet could be a culprint, as could the choice of video mode. > > > > I'd suggest that you want to install the QXL video driver, and setup > > SPICE instead of VNC, along with the SPICE guest agent. This gives a > > much better performing graphics layer, and better performing mouse. > > instead of the USB tablet which is known to have high CPU cost. > > > > Regards, > > Daniel > > There is none of enlightenment timer features enabled, I`d suggest to > start fixing the issue by adding them in the config. USB tablet is a > great problem too for a generated additional workload in idle, though > usb3 tablet connection results in much lower cpu consumption than > usb2.The guest XML shown has not got either USB2 or USB3 controllers present, so the tablet will be operating in USB1 mode which is awful for performance Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|