[Spice-devel] spice 0.6.3 slower than 0.4?

Alon Levy alevy at redhat.com
Mon Mar 14 10:00:54 PDT 2011


On Mon, Mar 14, 2011 at 06:55:23PM +0200, Alon Levy wrote:
> On Mon, Mar 14, 2011 at 04:28:29PM +0100, Vermonden David wrote:
> > Hi
> > 
> > I tested with spice 0.4 server and a spice 0.8 client but that's also
> > slow. Both versions use a different mechanism to exchange data (redhat
> > vdi port vs virtio-serial device) so I didn't expected it to perform
> > well.
> 
> You are talking about vdagent transport. This is not involved in any
> display updates.
> 

I just realized maybe a better explanation is in order: there were two
special devices in spice 0.4: the qxl device, a paravirtual graphics card,
and the vdiport, a serial transport. The later was used for agent stuff,
the former was where all graphics operations went through.
In spice 0.8 (well, I think already in 0.6 but not sure, definitely
in 0.8) there is a single device, the same old qxl device, but the vdiport
was dropped in favor of using the by now existing qemu serial virtio device,
which offers a similar serial channel. There have not been any performance
changes visible from this afaik, but bottom line is: qxl device is not related
to this change.

> > 
> > Is there a way to check when spice detects a movie and enables
> > compression? Or are there others tests I can perform to pinpoint the
> > poor performance I experience with spice 0.8?
> > 
> 
> other then adding prints etc. to the code, no.
> 
> > Kind regards,
> > David
> > 
> > -----Oorspronkelijk bericht-----
> > Van: Alon Levy [mailto:alevy at redhat.com] 
> > Verzonden: maandag 14 maart 2011 14:17
> > Aan: Vermonden David
> > CC: Attila Sukosd; Hans de Goede; spice-devel at lists.freedesktop.org
> > Onderwerp: Re: [Spice-devel] spice 0.6.3 slower than 0.4?
> > 
> > On Mon, Mar 14, 2011 at 01:32:14PM +0100, Vermonden David wrote:
> > > Hi
> > > 
> > > The "RHEV Spice agent"-service now keeps running. Thanks a lot for
> > your
> > > help!
> > > 
> > > Sadly enough movies still very choppy. Below I have pasted the output
> > > the qemu gives. Do I have to pay attention to the line
> > > "handle_new_display_channel: jpeg disabled"?
> > 
> > No, that's unrelated. That's talking about jpeg support for images,
> > which
> > is used to reduce bw in wan environment.
> > 
> > > 
> > > The CPU load is about 110% (Quad core 2.83 GHz CPU whith 8 GB of RAM).
> > > This is also much higher than when using spice 0.4. Is this an
> > > indication of an error or does spice 0.8 require more resources? The
> > > client CPU is about 80% (PentiumIV 1.80 Ghz).
> > 
> > Between 0.4 and 0.6.3 we ripped out the ffmpeg reliance and put in new
> > mjpeg
> > code. So this regression might (very probably I guess) be related to
> > this.
> > This affects just the compression btw, the rest of the video code (i.e.
> > discovering repeated updated to the same region) remained unchanged
> > afaik.
> > 
> > There is nothing to see in the logs below, they look normal.
> > 
> > > 
> > > [root at localhost ~]# /usr/local/bin/qemu-system-x86_64 -boot c -drive
> > > file=/var/lib/libvirt/images/xp01.img,if=virtio -soundhw ac97
> > -nographic
> > > -net nic,macaddr=52:54:00:13:9f:17,model=virtio -net
> > > tap,ifname=XP3,script=/etc/lan-ifup, -vga qxl -spice
> > > port=5931,disable-ticketing -enable-kvm -m 1024 -device virtio-serial
> > > -chardev spicevmc,id=vdagent,debug=1,name=vdagent -device
> > > virtserialport,chardev=vdagent,name=com.redhat.spice.0
> > > do_spice_init: starting 0.8.0
> > > spice_server_add_interface: SPICE_INTERFACE_KEYBOARD
> > > spice_server_add_interface: SPICE_INTERFACE_MOUSE
> > > spice_server_add_interface: SPICE_INTERFACE_QXL
> > > red_worker_main: begin
> > > spice_server_add_interface: SPICE_INTERFACE_RECORD
> > > spice_server_add_interface: SPICE_INTERFACE_PLAYBACK
> > > handle_dev_destroy_surfaces:
> > > handle_dev_destroy_surfaces:
> > > handle_dev_input: start
> > > reds_handle_main_link:
> > > reds_show_new_channel: channel 1:0, connected successfully, over Non
> > > Secure link
> > > reds_show_new_channel: channel 5:0, connected successfully, over Non
> > > Secure link
> > > reds_main_handle_message: net test: latency 0.646000 ms, bitrate
> > > 18653114 bps (17.788996 Mbps)
> > > reds_show_new_channel: channel 6:0, connected successfully, over Non
> > > Secure link
> > > reds_show_new_channel: channel 4:0, connected successfully, over Non
> > > Secure link
> > > red_dispatcher_set_cursor_peer:
> > > handle_dev_input: cursor connect
> > > reds_show_new_channel: channel 2:0, connected successfully, over Non
> > > Secure link
> > > red_dispatcher_set_peer:
> > > handle_dev_input: connect
> > > handle_new_display_channel: jpeg disabled
> > > handle_new_display_channel: zlib-over-glz disabled
> > > reds_show_new_channel: channel 3:0, connected successfully, over Non
> > > Secure link
> > > inputs_link:
> > > handle_dev_destroy_surfaces:
> > > scd:   1: vmc_register_interface
> > > spice_server_char_device_add_interface: CHAR_DEVICE vdagent
> > > handle_dev_input: mouse mode 2
> > > reds_main_handle_message: agent start
> > > 
> > > On the client side:
> > > .spice/spicec.log
> > > 
> > > 1300101368 INFO [1484:1484] Application::main: starting 0.8.0
> > > 1300101369 INFO [1484:1484] init_key_map: using evdev mapping
> > > 1300101369 INFO [1484:1484] MultyMonScreen::MultyMonScreen:
> > > platform_win: 27262977
> > > 1300101369 INFO [1484:1484] ForeignMenu::ForeignMenu: Creating a
> > foreign
> > > menu connection /tmp/SpiceForeignMenu-1484.uds
> > > 1300101369 INFO [1484:1485] RedPeer::connect_unsecure: Trying
> > 10.1.10.10
> > > 5931
> > > 1300101369 INFO [1484:1485] RedPeer::connect_unsecure: Connected to
> > > 10.1.10.10 5931
> > > 1300101369 INFO [1484:1487] RedPeer::connect_unsecure: Trying
> > 10.1.10.10
> > > 5931
> > > 1300101369 INFO [1484:1487] RedPeer::connect_unsecure: Connected to
> > > 10.1.10.10 5931
> > > 1300101369 INFO [1484:1488] RedPeer::connect_unsecure: Trying
> > 10.1.10.10
> > > 5931
> > > 1300101369 INFO [1484:1488] RedPeer::connect_unsecure: Connected to
> > > 10.1.10.10 5931
> > > 1300101369 INFO [1484:1489] RedPeer::connect_unsecure: Trying
> > 10.1.10.10
> > > 5931
> > > 1300101369 INFO [1484:1489] RedPeer::connect_unsecure: Connected to
> > > 10.1.10.10 5931
> > > 1300101369 INFO [1484:1490] RedPeer::connect_unsecure: Trying
> > 10.1.10.10
> > > 5931
> > > 1300101369 INFO [1484:1491] RedPeer::connect_unsecure: Trying
> > 10.1.10.10
> > > 5931
> > > 1300101369 INFO [1484:1490] RedPeer::connect_unsecure: Connected to
> > > 10.1.10.10 5931
> > > 1300101369 INFO [1484:1491] RedPeer::connect_unsecure: Connected to
> > > 10.1.10.10 5931
> > > 1300101369 INFO [1484:1484] DisplayChannel::create_sw_canvas: display
> > 0:
> > > using sw
> > > 1300101369 INFO [1484:1485] RedChannel::handle_notify: remote channel
> > > 1:0 warn!!! #0: keyboard channel is insecure
> > > 1300101371 INFO [1484:1484] DisplayChannel::create_sw_canvas: display
> > 0:
> > > using sw
> > > 1300101371 INFO [1484:1484] DisplayChannel::create_sw_canvas: display
> > 0:
> > > using sw
> > > 
> > > -----Oorspronkelijk bericht-----
> > > Van: Alon Levy [mailto:alevy at redhat.com] 
> > > Verzonden: maandag 14 maart 2011 11:35
> > > Aan: Vermonden David
> > > CC: Attila Sukosd; Hans de Goede; spice-devel at lists.freedesktop.org
> > > Onderwerp: Re: [Spice-devel] spice 0.6.3 slower than 0.4?
> > > 
> > > On Mon, Mar 14, 2011 at 11:28:16AM +0100, Vermonden David wrote:
> > > > Attila
> > > > 
> > > >  
> > > > 
> > > > Does the RHEV Spice agent always have to run? 
> > > > 
> > > >  
> > > > 
> > > > I managed to install the serial device but movies are still very
> > > choppy. I added the following argument:
> > > > 
> > > > -device virtio-serial -chardev
> > > spicevmc,id=vdagent,debug=0,name=vdagent
> > > 
> > > The complete command is: (in one line)
> > > -device virtio-serial
> > > -chardev spicevmc,id=vdagent,debug=0,name=vdagent
> > > -device virtserialport,chardev=vdagent,name=com.redhat.spice.0
> > > 
> > > i.e. create a virtioserialport with a specific name
> > > (com.redhat.spice.0), and connect
> > > it to a chardevice of type spicevmc and with name vdagent (the
> > property
> > > is called name,
> > > but it's actually the type of the spicevmc - so for instance there is
> > > another type for smartcard
> > > channel usage called smartcard).
> > > 
> > > > 
> > > >  
> > > > 
> > > > Kind regards,
> > > > 
> > > > David
> > > > 
> > > >  
> > > > 
> > > > Van: Attila Sukosd [mailto:attila.sukosd at gmail.com] 
> > > > Verzonden: maandag 14 maart 2011 10:31
> > > > Aan: Hans de Goede
> > > > CC: Vermonden David; spice-devel at lists.freedesktop.org
> > > > Onderwerp: Re: [Spice-devel] spice 0.6.3 slower than 0.4?
> > > > 
> > > >  
> > > > 
> > > > Hi,
> > > > 
> > > > On Mon, Mar 14, 2011 at 10:28 AM, Hans de Goede
> > <hdegoede at redhat.com>
> > > wrote:
> > > > 
> > > > Hi,
> > > > 
> > > > 
> > > > 
> > > > 
> > > > On 03/14/2011 10:00 AM, Vermonden David wrote:
> > > > 
> > > > 	Thanks for your quick response!
> > > > 	
> > > > 	
> > > > 
> > > > 	Slower when I play a movie (tried serveral). For instance when
> > > playing a
> > > > 	need for speed full HD movie it goes very smooth with spice 0.4
> > > with
> > > > 	correct sound synchronisation but when using 0.6.3 or 0.8 it
> > > shocks
> > > > 	(when heavy action it's almost a slide show) and the sound isn't
> > > > 	syncronised anymore.
> > > > 
> > > > 
> > > > I think we indeed may have some regressions wrt streaming video
> > > > performance. Someone needs to look into this I guess ...
> > > > 
> > > > Hmm, thats strange. We've been seeing much better performance in
> > video
> > > streaming with the latest 0.8 client with the 0.4 server. 
> > > > 
> > > >  
> > > > 
> > > > In earlier releases there were problems with the video not updating
> > > unless the window was scrolled, but that is gone now too.
> > > > 
> > > >  
> > > > 
> > > >  
> > > > 
> > > > Regards,
> > > > 
> > > >  
> > > > 
> > > > Attila
> > > > 
> > > >  
> > > > 
> > > > 	Regards,
> > > > 	
> > > > 	Hans
> > > > 
> > > > 	
> > > > 	_______________________________________________
> > > > 	Spice-devel mailing list
> > > > 	Spice-devel at lists.freedesktop.org
> > > > 	http://lists.freedesktop.org/mailman/listinfo/spice-devel
> > > > 
> > > >  
> > > > 
> > > 
> > > > _______________________________________________
> > > > Spice-devel mailing list
> > > > Spice-devel at lists.freedesktop.org
> > > > http://lists.freedesktop.org/mailman/listinfo/spice-devel
> > > 
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel


More information about the Spice-devel mailing list