On Sun, Jan 22, 2012 at 06:33:59PM +0100, Dominique Rodrigues wrote: > > Le 22/01/2012 18:28, Alon Levy a écrit : > >On Sun, Jan 22, 2012 at 05:15:42PM +0200, Alon Levy wrote: > >>On Sun, Jan 22, 2012 at 03:53:40PM +0100, Dominique Rodrigues wrote: > >>>Le 22/01/2012 16:00, Alon Levy a écrit : > >>>>On Fri, Jan 20, 2012 at 02:04:47PM -0500, Yaniv Kaul wrote: > >>>>>----- Original Message ----- > >>>>>>On Wed, Jan 18, 2012 at 11:59:45AM +0100, Dominique Rodrigues wrote: > >>>>>>>Le 18/01/2012 11:48, Alon Levy a écrit : > >>>>>>>>On Wed, Jan 18, 2012 at 11:39:13AM +0100, Dominique Rodrigues > >>>>>>>>wrote: > >>>>>>>>>Le 18/01/2012 11:32, Alon Levy a écrit : > >>>>>>>>>>On Wed, Jan 18, 2012 at 11:27:14AM +0100, Dominique Rodrigues > >>>>>>>>>>wrote: > >>>>>>>>>>>Le 18/01/2012 11:18, Alon Levy a écrit : > >>>>>>>>>>>>On Wed, Jan 18, 2012 at 09:54:49AM +0100, Dominique Rodrigues > >>>>>>>>>>>>wrote: > >>>>>>>>>>>>>Le 18/01/2012 09:44, Alon Levy a écrit : > >>>>>>>>>>>>>>On Wed, Jan 18, 2012 at 08:06:40AM +0100, Dominique > >>>>>>>>>>>>>>Rodrigues wrote: > >>>>>>>>>>>>>>>Hi, > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>Since I use qxl driver in virtual desktop powered by > >>>>>>>>>>>>>>>qemu-kvm, I > >>>>>>>>>>>>>>>found a strange problem with Gimp. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>After launching Gimp, open a new windows, and then try to > >>>>>>>>>>>>>>>draw > >>>>>>>>>>>>>>>something. It appears that the drawing is very slow and > >>>>>>>>>>>>>>>does not > >>>>>>>>>>>>>>>follow the mouse at all. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>It is the same if I use spicy, spicec or vnc to connect to > >>>>>>>>>>>>>>>my > >>>>>>>>>>>>>>>virtual desktop. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>This problem does not appear with cirrus or vmware graphic > >>>>>>>>>>>>>>>drivers. > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>I found that on any Linux distribution (CentOS, RHEL, > >>>>>>>>>>>>>>>Scientific > >>>>>>>>>>>>>>>Linux, Debian, Ubuntu). > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>I currently use : > >>>>>>>>>>>>>>>- qemu-kvm 1.0 compiled with spice support > >>>>>>>>>>>>>>>- spice-protocol 0.10.1 > >>>>>>>>>>>>>>>- spice 0.10 > >>>>>>>>>>>>>>>- spice-gtk 0.7 > >>>>>>>>>>>>>>>- xorg-qxl driver 0.16 > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>Is there any explanation for that ? > >>>>>>>>>>>>>>I would assume it is qxl driver cpu bound on something, > >>>>>>>>>>>>>>probably busy > >>>>>>>>>>>>>>waiting on the command ring. Can you run perf top on the > >>>>>>>>>>>>>>guest? > >>>>>>>>>>>>>> > >>>>>>>>>>>>>Indeed, during the drawing in Gimp, Xorg takes between 55% > >>>>>>>>>>>>>and 66% of CPU. > >>>>>>>>>>>>> > >>>>>>>>>>>>>After, Xorg goes down to 0.3%. > >>>>>>>>>>>>> > >>>>>>>>>>>>>(Test done on CentOS 6.2 guest, with 1280 Mb vRAM) > >>>>>>>>>>>>ok, can you drill down - you should be able to install the > >>>>>>>>>>>>debug symbols > >>>>>>>>>>>>for the qxl driver (xorg-x11-drv-qxl package) and see the > >>>>>>>>>>>>specific > >>>>>>>>>>>>functions that are taking the most time. > >>>>>>>>>>>> > >>>>>>>>>>>I installed qxl driver from freedesktop.org : > >>>>>>>>>>> > >>>>>>>>>>># wget -c > >>>>>>>>>>>http://xorg.freedesktop.org/releases/individual/driver/xf86-video-qxl-0.0.16.tar.bz2 > >>>>>>>>>>># tar xvfj xf86-video-qxl-0.0.16.tar.bz2 > >>>>>>>>>>># cd xf86-video-qxl-0.0.16 > >>>>>>>>>>># ./configure --libdir=/usr/lib64 --prefix=/usr CFLAGS='-O3' > >>>>>>>>>>># make > >>>>>>>>>>># make install > >>>>>>>>>>> > >>>>>>>>>>>Do you mean that I should use CFLAGS with "-g" ? > >>>>>>>>>>I think that's it, yes. > >>>>>>>>>> > >>>>>>>>>Ok. So how do you profile debug messages afterwhile ? > >>>>>>>>> > >>>>>>>>>If I "tail -f /var/log/Xorg.0.log", the only message I got is : > >>>>>>>>> > >>>>>>>>> Bad bpp: 1 (1) > >>>>>>>>> > >>>>>>>>>Other messages look standard. > >>>>>>>>> > >>>>>>>>Right, that's not interesting. What I meant was: > >>>>>>>> > >>>>>>>># yum install perf > >>>>>>>># perf top > >>>>>>>>copy paste the top entries. > >>>>>>>> > >>>>>>>Ok, that's it (from a screenshot of the VM): > >>>>>>Try ssh'ing to the vm, you can then use copy-paste. > >>>>>> > >>>>>>>samples pcnt function DSO > >>>>>>> > >>>>>>>3796.00 60.4% hashlittle > >>>>>>This sucks, unfortunately I don't have any quick fix for it. It's the > >>>>>>hash computation done on each image. Needless to say it needs to be > >>>>>>optimized - either made more efficient or reduce the number of calls. > >>>>>> > >>>>>>Soren, FYI. > >>>>>You could move to murmur2, like Windows' QXL driver > >>>>>(https://bugs.freedesktop.org/show_bug.cgi?id=37465) or murmur3 or other > >>>>>faster ones (https://bugs.freedesktop.org/show_bug.cgi?id=35775). > >>>>>At least it's not hashed twice > >>>>>now(https://bugs.freedesktop.org/show_bug.cgi?id=37977 - worth updating > >>>>>bug status?!), but I'm not sure it should be hashed at all, if it's not > >>>>>cached. > >>>>>Y. > >>>>Looks like this could be x6 performance gain when compared to hashlittle > >>>>(lookup3 at http://code.google.com/p/smhasher/). So it would still be > >>>>better not to run it at all but it might stop being the bottleneck. I'll > >>>>try to do a patch. > >>>> > >>>Sounds promising. > >>Actually only 2x since we use a 32bit hash anyway (x86/x64). Still worth > >>a patch. > >> > >Since the hash is not in use right now at all, but commented out, you > >could get an even more remarkable performance improvement by disabling > >it. If you can check the branch at > > > > git://people.freedesktop.org/~alon/xf86-video-qxl murmur3 > > > >You can tell us how much it actually improves for you. I didn't disable > >the hashing, just replaced lookup3 with MurmurHash3 from > >http://code.google.com/p/smhasher/wiki/MurmurHash3. > > > > I guess I missed something, because I don't manage to launch the > X-server now in my CentOS guest. > > This what I have done : > > # git clone git://people.freedesktop.org/~alon/xf86-video-qxl > xf86-video-qxl-alon-git > # cd xf86-video-qxl-alon-git > # git checkout murmur3 > # git branch > * murmur3 > surface-fixes > # export > PKG_CONFIG_PATH=/usr/local//share/pkgconfig/:/usr/local/lib/pkgconfig > # ./autogen.sh --libdir=/usr/lib64 --prefix=/usr CFLAGS='-O3' > # make > # make install > > Where is my mistake ?
Not yours, mine. Should have tested that it at least runs (missing symbol) > > > >>>>>>>/usr/lib64/xorg/modules/drivers/qxl_drv.so > >>>>>>>2014.00 32.1% __memcpy_ssse3 /lib64/libc-2.12.so > >>>>>>>341.00 5.4% download_box > >>>>>>>/usr/lib64/xorg/modules/drivers/qxl_drv.so > >>>>>>>61.00 1.0% __memset_sse2 > >>>>>>> /lib64/libc-2.12.so > >>>>>>>11.00 0.2% qxl_ring_push > >>>>>>>/usr/lib64/xorg/modules/drivers/qxl_drv.so > >>>>>>>10.00 0.2% finish_task_switch [kernel.kallsyms] > >>>>>>>8.00 0.1% qxl_allocnf > >>>>>>>/usr/lib64/xorg/modules/drivers/qxl_drv.so > >>>>>>>8.00 0.1% retint_careful > >>>>>>> [kernel.kallsyms] > >>>>>>>6.00 0.1% hash_and_copy > >>>>>>>/usr/lib64/xorg/modules/drivers/qxl_drv.so > >>>>>>>>>>>>>>>Regards, > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>-- > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>> Dominique Rodrigues > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>nanoClouD<http://www.nanocloud.com> > >>>>>>>>>>>>>>>8, rue Lemercier > >>>>>>>>>>>>>>>75017 Paris > >>>>>>>>>>>>>>>France > >>>>>>>>>>>>>>>standard : +33 1 77 69 64 38 > >>>>>>>>>>>>>>>529 002 743 R.C.S. Paris > >>>>>>>>>>>>>>>begin:vcard > >>>>>>>>>>>>>>>fn:Dominique Rodrigues > >>>>>>>>>>>>>>>n:Rodrigues;Dominique > >>>>>>>>>>>>>>>org:nanoClouD > >>>>>>>>>>>>>>>adr:;;8, rue Lemercier;Paris;;75017;France > >>>>>>>>>>>>>>>email;internet:dominique.rodrig...@nanocloud.com > >>>>>>>>>>>>>>>title:Directeur Technique > >>>>>>>>>>>>>>>tel;work:+33 (0) 1 77 69 64 38 > >>>>>>>>>>>>>>>tel;cell:+33 (0) 6 28 52 37 70 > >>>>>>>>>>>>>>>url:www.nanocloud.com > >>>>>>>>>>>>>>>version:2.1 > >>>>>>>>>>>>>>>end:vcard > >>>>>>>>>>>>>>> > >>>>>>>>>>>>>>>_______________________________________________ > >>>>>>>>>>>>>>>Spice-devel mailing list > >>>>>>>>>>>>>>>Spice-devel@lists.freedesktop.org > >>>>>>>>>>>>>>>http://lists.freedesktop.org/mailman/listinfo/spice-devel > >>>>>>>>>>>>>begin:vcard > >>>>>>>>>>>>>fn:Dominique Rodrigues > >>>>>>>>>>>>>n:Rodrigues;Dominique > >>>>>>>>>>>>>org:nanoClouD > >>>>>>>>>>>>>adr:;;8, rue Lemercier;Paris;;75017;France > >>>>>>>>>>>>>email;internet:dominique.rodrig...@nanocloud.com > >>>>>>>>>>>>>title:Directeur Technique > >>>>>>>>>>>>>tel;work:+33 (0) 1 77 69 64 38 > >>>>>>>>>>>>>tel;cell:+33 (0) 6 28 52 37 70 > >>>>>>>>>>>>>url:www.nanocloud.com > >>>>>>>>>>>>>version:2.1 > >>>>>>>>>>>>>end:vcard > >>>>>>>>>>>>> > >>>>>>>>>>>>>_______________________________________________ > >>>>>>>>>>>>>Spice-devel mailing list > >>>>>>>>>>>>>Spice-devel@lists.freedesktop.org > >>>>>>>>>>>>>http://lists.freedesktop.org/mailman/listinfo/spice-devel > >>>>>>>>>>>begin:vcard > >>>>>>>>>>>fn:Dominique Rodrigues > >>>>>>>>>>>n:Rodrigues;Dominique > >>>>>>>>>>>org:nanoClouD > >>>>>>>>>>>adr:;;8, rue Lemercier;Paris;;75017;France > >>>>>>>>>>>email;internet:dominique.rodrig...@nanocloud.com > >>>>>>>>>>>title:Directeur Technique > >>>>>>>>>>>tel;work:+33 (0) 1 77 69 64 38 > >>>>>>>>>>>tel;cell:+33 (0) 6 28 52 37 70 > >>>>>>>>>>>url:www.nanocloud.com > >>>>>>>>>>>version:2.1 > >>>>>>>>>>>end:vcard > >>>>>>>>>>> > >>>>>>>>>begin:vcard > >>>>>>>>>fn:Dominique Rodrigues > >>>>>>>>>n:Rodrigues;Dominique > >>>>>>>>>org:nanoClouD > >>>>>>>>>adr:;;8, rue Lemercier;Paris;;75017;France > >>>>>>>>>email;internet:dominique.rodrig...@nanocloud.com > >>>>>>>>>title:Directeur Technique > >>>>>>>>>tel;work:+33 (0) 1 77 69 64 38 > >>>>>>>>>tel;cell:+33 (0) 6 28 52 37 70 > >>>>>>>>>url:www.nanocloud.com > >>>>>>>>>version:2.1 > >>>>>>>>>end:vcard > >>>>>>>>> > >>>>>>>> > >>>>>>>>>_______________________________________________ > >>>>>>>>>Spice-devel mailing list > >>>>>>>>>Spice-devel@lists.freedesktop.org > >>>>>>>>>http://lists.freedesktop.org/mailman/listinfo/spice-devel > >>>>>>>begin:vcard > >>>>>>>fn:Dominique Rodrigues > >>>>>>>n:Rodrigues;Dominique > >>>>>>>org:nanoClouD > >>>>>>>adr:;;8, rue Lemercier;Paris;;75017;France > >>>>>>>email;internet:dominique.rodrig...@nanocloud.com > >>>>>>>title:Directeur Technique > >>>>>>>tel;work:+33 (0) 1 77 69 64 38 > >>>>>>>tel;cell:+33 (0) 6 28 52 37 70 > >>>>>>>url:www.nanocloud.com > >>>>>>>version:2.1 > >>>>>>>end:vcard > >>>>>>> > >>>>>> > >>>>>>_______________________________________________ > >>>>>>Spice-devel mailing list > >>>>>>Spice-devel@lists.freedesktop.org > >>>>>>http://lists.freedesktop.org/mailman/listinfo/spice-devel > >>>>>> > >>>begin:vcard > >>>fn:Dominique Rodrigues > >>>n:Rodrigues;Dominique > >>>org:nanoClouD > >>>adr:;;8, rue Lemercier;Paris;;75017;France > >>>email;internet:dominique.rodrig...@nanocloud.com > >>>title:Directeur Technique > >>>tel;work:+33 (0) 1 77 69 64 38 > >>>tel;cell:+33 (0) 6 28 52 37 70 > >>>url:www.nanocloud.com > >>>version:2.1 > >>>end:vcard > >>> > >> > >> > >> > >>>_______________________________________________ > >>>Spice-devel mailing list > >>>Spice-devel@lists.freedesktop.org > >>>http://lists.freedesktop.org/mailman/listinfo/spice-devel > >>_______________________________________________ > >>Spice-devel mailing list > >>Spice-devel@lists.freedesktop.org > >>http://lists.freedesktop.org/mailman/listinfo/spice-devel > begin:vcard > fn:Dominique Rodrigues > n:Rodrigues;Dominique > org:nanoClouD > adr:;;8, rue Lemercier;Paris;;75017;France > email;internet:dominique.rodrig...@nanocloud.com > title:Directeur Technique > tel;work:+33 (0) 1 77 69 64 38 > tel;cell:+33 (0) 6 28 52 37 70 > url:www.nanocloud.com > version:2.1 > end:vcard > > _______________________________________________ > Spice-devel mailing list > Spice-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/spice-devel _______________________________________________ Spice-devel mailing list Spice-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/spice-devel