Why is XRenderAddTraps preferred over XRenderCompositeTrapezoids?

Clemens Eisserer linuxhippy at gmail.com
Fri Jun 20 01:25:22 PDT 2008


Hi,

1.) It seems cairo plans since some time to switch from
XRenderCompositeTrapezoids to XRenderAddTraps to render their traps.
What are the advantages of XRenderAddTraps compared to
XRenderCompositeTrapezoids?

2.) A thing which struggles me is I have to composite many one-pixel
high lines (scanlines).
For now I simply call XRenderComposite for each line, but performance
is of course suboptimal ( I guess because gpu-setup overhead is high).

Would it help to use XRenderCompositeTrapezoids instead, as far as I
know the mask is generated by the CPU, so per-primitive overhead
should not matter that much.
Or will uploading the generated mask be slower than the
per-primitive-overhead I experience?

3.) Is one call to XRenderFillRectangles with 100 rects much faster
than 100 calls to XRenderFillRectangle?
Is it just protocol related, or is there also a difference how those
rects are processed by the driver/gpu?

Thank you in advance, lg Clemens



More information about the xorg mailing list