[Spice-devel] Video buffering
John A. Sullivan III
jsullivan at opensourcedevel.com
Sat Jun 18 16:44:43 PDT 2011
On Sat, 2011-06-18 at 17:48 -0400, Marian Krcmarik wrote:
> Hi John,
> Could you please specify more your setup? Maybe It would be useful to know more about your setup so that we have better idea and can reproduce easier. The best is to know in what setup you observe particular problems. I mean things such as: host, qemu (its cli), spice-server, spice client, guest (window manager), qxl driver, environment (WAN?, latency, bandwidth) etc.
> You mentioned several problems:
> - Xorg process hits 100% (F15 on F15), Do you still observe that problem, I can see you are testing other stuff (video, office work..) so It means you solved it? How? If not what setup is it? can you hit that on other guests (Windows?) In case you hit that on Linux can you provide profile from sysprof tool or output of perf top?
> - scrolling, typing. I suppose It was observed in WAN (what exactly?)? were jpeg/zlib over glz options enabled? Can you provide the webpage you tested on?
> - video, before you mentioned you were amazed by video performance, Did you change anything in your setup? It's the WAN? I can see that Attila has acceptable experiences with video performance but he mentioned he was using 0.4 spice-server (I've read in his replies somewhere recently, I hope), If you have time and available host, you can try to compare 0.4 and 0.8 spice server when playing video and report back:).
I'll resend this without the attachments as the message size has trapped
it awaiting moderator approval. Hopefully it will be approved so you
can have the sysprof reports - John
Thank you very much for taking the time to respond. Again, a lot of our
questions are really user questions and we don't want to consume a lot
of SPICE's development resources to exhaustively troubleshoot our
environment unless it helps the development effort. Assuming it does,
I'll gladly share more information below as we would like to do our part
to contribute to the project as integrators, testers, and end users.
Phil, since you built the original environment, please correct me if I
have any of the details wrong. Our test KVM host has two eight core AMD
processors and 16 GB of RAM. The disk is Nexenta iSCSI SAN connected
via multipath multibus with two Gb Ethernet connections. Connection to
the user/server network is via two bonded then bridged Gb Ethernet NICs.
It is running Fedora 15 with the Fedora 15 RPMs patched with Alon's
4-bit pixel depth patch. The host sits in a data center with relatively
unlimited bandwidth. The data center is isolated, i.e., there are no
end users in the data center; the are all connected via the Internet.
The data center is in the US; the testers are in the US and the UK so we
have quite variable latency. All of the test labs are using consumer
grade Internet access - cable and DSL. The DSL links in particular are
subject to some congestion so we do have a good testbed for not only low
bandwidth but high latency. We also have access to 3G Mifi connectivity
over the Verizon cellular network.
On the KVM host, we carved out three test guests all using raw rather
than file based storage. Disk access is very slow - a nasty consequence
of doing iSCSI with 4KB Linux block sizes :(. The guests are as
1) A Windows 7 desktop with roughly 4GB of RAM. It is also running
TSPlus as a test for a non-Microsoft RDP implementation. QXL is
compiled from source version 126.96.36.199. I believe vdagent (version
0.5.1.0) and vdservice (version 0.5.1.0) were compiled from source. We
do have a stability problem with the agent and must regularly restart
2) A Windows Server 2008 destkop as this is what we will need to license
under SPLA and is the only affordable (?) alternative if we need a
separate desktop per user as we do with SPICE (unlike TSPlus - not a
complaint - just a difference). This also has roughly 4GB of RAM. Save
version of SPICE as the W7 system with the same stability issues.
3) A Fedora 15 KDE4 desktop with 2GB of RAM. Using the RPMs from the
distribution for all SPICE components.
We have been doing almost all our video testing in Windows. X
utilization is still a problem in Fedora although it was much better
when we launched qemu from the command line rather than from libvirt as
reported with the configuration in the previous email.
The scrolling/typing, etc. issues are indeed over the WAN and on the
Windows systems (which display surprisingly low CPU utilization). We
were testing with www.spiritualoutreach.org. jpeg/zlib over glz options
are enabled as auto and we also tried manually setting them. No
difference observed in performance.
We are amazed by video performance compared to other protocols. That
does not mean it is a usable user experience :( But we are hopeful! I
believe Attila is using a 15Mbps DSL line. Our are less than that -
probably topping out at 10 Mbps and usually less. The DSL connections
are definitely less than that (I am personally testing on a cable
connection) and the 3G connection is certainly much less. I also realize
that video is video and it's just going to take a lot more bandwidth
than is generally available on 3G unless running in low resolution and
in a small geometry.
I'm not familiar with running perf top. What event would you like me to
trace and what should the command line be? I did use sysprof and have
attached two snapshots - one while opening KWrite and the other while
trying to type in it. I guess the improvements from starting from the
command line were a coincidence. That's how I started this instance of
the Fedora guest and, as you can see, it was barely usable.
Please let me know if there is anything else you need and any other next
steps we should take. Thanks - John
More information about the Spice-devel