nV News Forums

 
 

nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   Window resizing _very_ slow with compiz (http://www.nvnews.net/vbulletin/showthread.php?t=98277)

Linuxhippy 09-12-07 08:33 AM

Window resizing _very_ slow with compiz
 
Hello,

I have a GeForce-6600PCIe/256mb and I am running compiz-0.5 on Xorg-7.2 with the latest drivers (AIGLX).
I experience very slow window resizing (about 2-4fps), the large the window which is resized gets, the slower the resizing happens.

Any ideas what could be wrong, or how I could improve things?

Thank you in advance, lg Clemens

AaronP 09-12-07 11:17 AM

Re: Window resizing _very_ slow with compiz
 
Window resizing with Composite is slow because every time the window is resized, the server creates a new pixmap (which starts out in system memory by default) and then copies the contents of the old pixmap into it, which does a readback from video memory. Then, when compiz creates a texture for that pixmap, that uploads it to video memory again. This is clearly inefficient. You can improve resizing performance considerably by setting InitialPixmapPlacement to 2 so that all that's required is a fast vidmem-to-vidmem blit. However, most of the time the copy is useless anyway because the application will repaint the entire window in response to a resize.

swany 09-12-07 02:06 PM

Re: Window resizing _very_ slow with compiz
 
I think the developers are aware of the problem judging from this thread on the xorg mailing list.
http://lists.freedesktop.org/archive...er/027836.html

Linuxhippy 09-23-07 01:02 PM

Re: Window resizing _very_ slow with compiz
 
Hi again,

Thanks for the hint with the pixmap-placement. I tried it but didn't help, at least it led to no noticeable improvement :-/

Is pixmap-allocation really that slow that only 2-4fps refreshes can be done it the window is 1280x1024?

Thanks, lg Clemens

AaronP 09-23-07 01:50 PM

Re: Window resizing _very_ slow with compiz
 
It's not the allocation that's slow. After allocating the new pixmap, the server copies pixels from the parent window into the new pixmap. For X.org 7.2 and earlier, this used XCopyArea but this turned out to be a security problem for certain windows, so they switched to the RENDER extension's Composite call instead for X.org 7.3. Since pixmaps start out in sysmem by default, this falls back to software *every single time the window is resized*.

Linuxhippy 09-24-07 12:38 PM

Re: Window resizing _very_ slow with compiz
 
Hi AaronP,

thanks a lot for your reply!

Quote:

Originally Posted by AaronP
Since pixmaps start out in sysmem by default, this falls back to software *every single time the window is resized*.

But shouldn't the initialPixmapPlacement switch help to make pixmaps be allocated in VRAM first? I tried 1, 2 and both seem slow - when I try to set 0 compiz crashes :-/

Thanks, lg Clemens

Linuxhippy 09-26-07 06:23 AM

Re: Window resizing _very_ slow with compiz
 
@AaronP:

Is there any data I could provide which could point out what the problem could be?

Please help...

Thanks, Clemens

jamesjones 09-27-07 05:43 PM

Re: Window resizing _very_ slow with compiz
 
While the readbacks Aaron describes do cause considerable slowdown, there are many factors affecting window resizing with comosite managers, and especially window resizing with compiz. In particular, creating GLX drawables is a slow operation for various reasons. It is not a matter of simply allocating the memory. Compiz currently must create a GLX drawable for every "frame" of the resize operation. As mentioned, the X.Org developers are aware of the general problem, and we're also aware of the bottlenecks specific to our driver, and we're of course working on improvements as time permits. At this point, we're not blocked by lack of information from users on this one.

ckenda1 09-27-07 11:44 PM

Re: Window resizing _very_ slow with compiz
 
I actually don't have a problem with slow resizing but I do have the slow/laggy (un)minimize problem with my 8800GTS like many others with the higher end 8xxx series cards.

I tried Loose Binding and Setting InitialPixmapPlacement to 2 and that helped about 80%, but I noticed with .19 InitialPixmapPlacement can now be set to 0-4 instead of 0-2 as previous releases. Is there any danger setting this to 3 or 4 instead?

Reason I ask is because when I set it to 3, the problem with (un)minimizing goes away. 4 causes some distortion though.

Any insight to this?

Thanks,
Carl

salekh 10-11-07 04:09 PM

Re: Window resizing _very_ slow with compiz
 
Same problem with slow resizing...
BUT! Why (If it's compiz and/or xorg problem) it works well on some systems???
(Without any problems)

AMD Athlon 64 3000+
512 MB ram
NV GF 6600, 128 MB
openSuSE 10.2
X.Org X Server 1.4.0 Release Date: 5 September 2007 (updated from http://download.opensuse.org/reposit...openSUSE_10.2/)
NVIDIA Driver Version: 100.14.19

salekh 10-14-07 09:50 AM

Re: Window resizing _very_ slow with compiz
 
Does anyone can help?

Linuxhippy 10-15-07 06:18 AM

Re: Window resizing _very_ slow with compiz
 
I'll try out compiz soon on my Intel-GMA950 laptop ... I am quite curious what the results will be ...

lg Clemens


All times are GMT -5. The time now is 12:05 AM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.