Re: Better gradient handling (migration/fallbacks)

2008-11-18 Thread Adam Jackson
On Thu, 2008-11-13 at 11:16 -0800, Eric Anholt wrote:

> We just need to accelerate gradients, and is where any effort in
> software should occur.  It's on our schedule, but not for quite a while.
> Setting up the X Server to allow drivers to request gradients was easy
> last time I did it, though I've misplaced the branch it looks like.
> Then someone would just have to write the shader for it, and for
> 915-class hardware that shouldn't be hard.

One pleasant side effect of shatter is that the acceleration layer
should be able to catch rendering from source-only pictures and
magically transform them into pixel-backed pictures if it thinks that'll
be a win.  So even for hardware without the cojones to do gradients, we
should be able to do slightly better than pure software.

- ajax


signature.asc
Description: This is a digitally signed message part
___
xorg mailing list
xorg@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/xorg

Re: Better gradient handling (migration/fallbacks)

2008-11-16 Thread Joel Nowotny

We tried to use gradients to skin our application, but performance was so bad 
we soon gave up (on i855GM).
Oprofile showed the majority of time was spent in memcpy.
It would be great if these problems could be resolved in the upcoming xserver 
release.
Great to hear code has already been written!

thx Joel

_
Discover the new Windows Vista
http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE___
xorg mailing list
xorg@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/xorg

Re: Better gradient handling (migration/fallbacks)

2008-11-14 Thread Clemens Eisserer
Hi,

Do you think there is any chance of getting the gradient hooks into 1.6?
Would not be too bad if no driver is able to accalerate it for now,
but at least users would not need xserver 1.7 to get accalerated
gradients.
Distributors usually tend to update drivers, but they almost never
switch to a new xorg major version.

- Clemens
___
xorg mailing list
xorg@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/xorg


Re: Better gradient handling (migration/fallbacks)

2008-11-13 Thread Clemens Eisserer
> We just need to accelerate gradients, and is where any effort in
> software should occur.  It's on our schedule, but not for quite a while.
> Setting up the X Server to allow drivers to request gradients was easy
> last time I did it, though I've misplaced the branch it looks like.
> Then someone would just have to write the shader for it, and for
> 915-class hardware that shouldn't be hard.
Glad to know its on your schedule.
Of course accalerated gradients would be even better :)

Thanks for your reply, Clemens
___
xorg mailing list
xorg@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/xorg


Re: Better gradient handling (migration/fallbacks)

2008-11-13 Thread Eric Anholt
On Thu, 2008-11-13 at 14:30 +0100, Clemens Eisserer wrote:
> Hi,
> 
> I've experienced some performance problems with gradients when working
> on the xrender/java2d backend.
> 
> A typical problematic case is when mask and desitation picture were in
> VRAM, and a gradient is used as source.
> As far as I understand this causes mask and dst to be moved out into
> sysmem, the composition is done by pixman and at the next accalerated
> operation the whole thing is moved back.
> In profiles I saw that about 35% of total cycles where spent in
> moveIn/moveOut and 5% in gradient generation itself, for a rather
> boring UI like the following:
> http://picasaweb.google.com/linuxhippy/LinuxhippySBlog?authkey=tXfo8RSnq4s#5224085419010972994
> 
> What I did to work arround the problem was to use a temporary pixmap,
> copy the gradient to the pixmap and use that pixpap later for
> composition.
> This means only moveIn's and enhanced performance a lot, about 3-4x
> for the UI workload mentioned above.
> 
> This seems to be an acceptable workarround but causes an unnescessary
> burden for UMA architectures like Intel+GEM, so doing this be default
> should be up to the driver.
> Would it be possible to pass gradients down to the driver, to allow
> the driver to decide what to do with the gradient, or even provide
> accaleration for it.
> How complex would it be to provide the nescessary hooks?
> As far as I know two-stop gradients often can be accalerated with some
> texture-mapping tricks, and everything more complex still could be
> done with shaders.
> 
> I am no xorg/exa expert, so maybe I just do not understand things and
> draw wrong conclusions.

We just need to accelerate gradients, and is where any effort in
software should occur.  It's on our schedule, but not for quite a while.
Setting up the X Server to allow drivers to request gradients was easy
last time I did it, though I've misplaced the branch it looks like.
Then someone would just have to write the shader for it, and for
915-class hardware that shouldn't be hard.

-- 
Eric Anholt
[EMAIL PROTECTED] [EMAIL PROTECTED]




signature.asc
Description: This is a digitally signed message part
___
xorg mailing list
xorg@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/xorg