[Spice-devel] Poor video performance in virt-manager with spice

gansteed gansteed at gmail.com
Thu Jul 22 01:55:36 UTC 2021


Another difference is OS:

NUC is using Debian 10 with qemu 3.1.0, Linux kernel 4.19.194-2
Desktop is using Debian 11 with qemu 5.2.0, Linux kernel 5.10.40-1

gansteed <gansteed at gmail.com> 于2021年7月22日周四 上午9:53写道:

> Hello,
>
>     I'm using spice in virt-manager, but it's slow in video. I've been
> using spice in my NUC, with the same configuration, that's fluently. The
> biggest difference between my NUC and desktop is hardware is different. NUC
> is using a integrated graphics while desktop using a RTI RX 550/560(I don't
> remember).
>
>     Is there any suggestions to make the VM video performance faster?
>
> Hardware of my desktop:
>
> $ lspci | grep VGA
> 09:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI]
> Baffin [Radeon RX 550 640SP / RX 560/560X] (rev ff)
> $ lscpu  | grep 'Model name'
> Model name:                      AMD Ryzen 7 5800X 8-Core Processor
>
> XML of my VM:
>
> <domain type='kvm' id='13'>
>   <name>win7</name>
>   <uuid>5d9cee98-36b5-475e-a74d-4e8a19e74ba9</uuid>
>   <metadata>
>     <libosinfo:libosinfo xmlns:libosinfo="
> http://libosinfo.org/xmlns/libvirt/domain/1.0">
>       <libosinfo:os id="http://microsoft.com/win/7"/>
>     </libosinfo:libosinfo>
>   </metadata>
>   <memory unit='KiB'>8388608</memory>
>   <currentMemory unit='KiB'>8388608</currentMemory>
>   <vcpu placement='static'>4</vcpu>
>   <resource>
>     <partition>/machine</partition>
>   </resource>
>   <os>
>     <type arch='x86_64' machine='pc-q35-5.2'>hvm</type>
>     <boot dev='hd'/>
>   </os>
>   <features>
>     <acpi/>
>     <apic/>
>     <hyperv>
>       <relaxed state='on'/>
>       <vapic state='on'/>
>       <spinlocks state='on' retries='8191'/>
>     </hyperv>
>     <vmport state='off'/>
>   </features>
>   <cpu mode='custom' match='exact' check='full'>
>     <model fallback='forbid'>EPYC-Rome</model>
>     <vendor>AMD</vendor>
>     <feature policy='require' name='x2apic'/>
>     <feature policy='require' name='tsc-deadline'/>
>     <feature policy='require' name='hypervisor'/>
>     <feature policy='require' name='tsc_adjust'/>
>     <feature policy='require' name='erms'/>
>     <feature policy='require' name='invpcid'/>
>     <feature policy='require' name='pku'/>
>     <feature policy='require' name='vaes'/>
>     <feature policy='require' name='vpclmulqdq'/>
>     <feature policy='require' name='fsrm'/>
>     <feature policy='require' name='spec-ctrl'/>
>     <feature policy='require' name='stibp'/>
>     <feature policy='require' name='arch-capabilities'/>
>     <feature policy='require' name='ssbd'/>
>     <feature policy='require' name='xsaves'/>
>     <feature policy='require' name='cmp_legacy'/>
>     <feature policy='require' name='amd-ssbd'/>
>     <feature policy='require' name='virt-ssbd'/>
>     <feature policy='require' name='rdctl-no'/>
>     <feature policy='require' name='skip-l1dfl-vmentry'/>
>     <feature policy='require' name='mds-no'/>
>     <feature policy='require' name='pschange-mc-no'/>
>     <feature policy='disable' name='svm'/>
>     <feature policy='require' name='topoext'/>
>     <feature policy='disable' name='npt'/>
>     <feature policy='disable' name='nrip-save'/>
>   </cpu>
>   <clock offset='localtime'>
>     <timer name='rtc' tickpolicy='catchup'/>
>     <timer name='pit' tickpolicy='delay'/>
>     <timer name='hpet' present='no'/>
>     <timer name='hypervclock' present='yes'/>
>   </clock>
>   <on_poweroff>destroy</on_poweroff>
>   <on_reboot>restart</on_reboot>
>   <on_crash>destroy</on_crash>
>   <pm>
>     <suspend-to-mem enabled='no'/>
>     <suspend-to-disk enabled='no'/>
>   </pm>
>   <devices>
>     <emulator>/usr/bin/qemu-system-x86_64</emulator>
>     <disk type='file' device='disk'>
>       <driver name='qemu' type='qcow2'/>
>       <source file='/data/vms/win7.qcow2' index='1'/>
>       <backingStore/>
>       <target dev='vda' bus='virtio'/>
>       <alias name='virtio-disk0'/>
>       <address type='pci' domain='0x0000' bus='0x03' slot='0x00'
> function='0x0'/>
>     </disk>
>     <controller type='usb' index='0' model='ich9-ehci1'>
>       <alias name='usb'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x1d'
> function='0x7'/>
>     </controller>
>     <controller type='usb' index='0' model='ich9-uhci1'>
>       <alias name='usb'/>
>       <master startport='0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x1d'
> function='0x0' multifunction='on'/>
>     </controller>
>     <controller type='usb' index='0' model='ich9-uhci2'>
>       <alias name='usb'/>
>       <master startport='2'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x1d'
> function='0x1'/>
>     </controller>
>     <controller type='usb' index='0' model='ich9-uhci3'>
>       <alias name='usb'/>
>       <master startport='4'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x1d'
> function='0x2'/>
>     </controller>
>     <controller type='sata' index='0'>
>       <alias name='ide'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x1f'
> function='0x2'/>
>     </controller>
>     <controller type='pci' index='0' model='pcie-root'>
>       <alias name='pcie.0'/>
>     </controller>
>     <controller type='pci' index='1' model='pcie-root-port'>
>       <model name='pcie-root-port'/>
>       <target chassis='1' port='0x10'/>
>       <alias name='pci.1'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02'
> function='0x0' multifunction='on'/>
>     </controller>
>     <controller type='pci' index='2' model='pcie-root-port'>
>       <model name='pcie-root-port'/>
>       <target chassis='2' port='0x11'/>
>       <alias name='pci.2'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02'
> function='0x1'/>
>     </controller>
>     <controller type='pci' index='3' model='pcie-root-port'>
>       <model name='pcie-root-port'/>
>       <target chassis='3' port='0x12'/>
>       <alias name='pci.3'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02'
> function='0x2'/>
>     </controller>
>     <controller type='pci' index='4' model='pcie-root-port'>
>       <model name='pcie-root-port'/>
>       <target chassis='4' port='0x13'/>
>       <alias name='pci.4'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02'
> function='0x3'/>
>     </controller>
>     <controller type='pci' index='5' model='pcie-root-port'>
>       <model name='pcie-root-port'/>
>       <target chassis='5' port='0x14'/>
>       <alias name='pci.5'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02'
> function='0x4'/>
>     </controller>
>     <controller type='virtio-serial' index='0'>
>       <alias name='virtio-serial0'/>
>       <address type='pci' domain='0x0000' bus='0x02' slot='0x00'
> function='0x0'/>
>     </controller>
>     <interface type='network'>
>       <mac address='52:54:00:3b:e8:0f'/>
>       <source network='default'
> portid='4814d165-b576-4bfe-9e61-afd02fee8ca2' bridge='virbr0'/>
>       <target dev='vnet12'/>
>       <model type='virtio'/>
>       <alias name='net0'/>
>       <address type='pci' domain='0x0000' bus='0x01' slot='0x00'
> function='0x0'/>
>     </interface>
>     <serial type='pty'>
>       <source path='/dev/pts/0'/>
>       <target type='isa-serial' port='0'>
>         <model name='isa-serial'/>
>       </target>
>       <alias name='serial0'/>
>     </serial>
>     <console type='pty' tty='/dev/pts/0'>
>       <source path='/dev/pts/0'/>
>       <target type='serial' port='0'/>
>       <alias name='serial0'/>
>     </console>
>     <channel type='spicevmc'>
>       <target type='virtio' name='com.redhat.spice.0' state='connected'/>
>       <alias name='channel0'/>
>       <address type='virtio-serial' controller='0' bus='0' port='1'/>
>     </channel>
>     <input type='mouse' bus='ps2'>
>       <alias name='input0'/>
>     </input>
>     <input type='keyboard' bus='ps2'>
>       <alias name='input1'/>
>     </input>
>     <graphics type='spice' port='5900' autoport='no' listen='127.0.0.1'>
>       <listen type='address' address='127.0.0.1'/>
>       <gl enable='no'/>
>     </graphics>
>     <video>
>       <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1'
> primary='yes'/>
>       <alias name='video0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x01'
> function='0x0'/>
>     </video>
>     <memballoon model='virtio'>
>       <alias name='balloon0'/>
>       <address type='pci' domain='0x0000' bus='0x04' slot='0x00'
> function='0x0'/>
>     </memballoon>
>   </devices>
>   <seclabel type='dynamic' model='apparmor' relabel='yes'>
>     <label>libvirt-5d9cee98-36b5-475e-a74d-4e8a19e74ba9</label>
>     <imagelabel>libvirt-5d9cee98-36b5-475e-a74d-4e8a19e74ba9</imagelabel>
>   </seclabel>
>   <seclabel type='dynamic' model='dac' relabel='yes'>
>     <label>+64055:+64055</label>
>     <imagelabel>+64055:+64055</imagelabel>
>   </seclabel>
> </domain>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/spice-devel/attachments/20210722/12244269/attachment-0001.htm>


More information about the Spice-devel mailing list