Damage as a DIX notion
Michel Dänzer
michel at daenzer.net
Tue Sep 27 05:49:38 UTC 2016
On 27/09/16 01:10 AM, Keith Packard wrote:
> Eric Anholt <eric at anholt.net> writes:
>
>> You're also going to be doing extra rendering as a result of tearfree,
>> right? (I assume this is double or triple buffering and back-copying
>> damage). If that's the hit for dots just from damage computation, then
>> I think we need to go the keithp proposed API route (or do the quick
>> hack of "hey, look, 100000 dots on my 100x100 window, I'll just say the
>> whole thing is damaged).
>
> Yeah, at least doing a mixed model where operations which are dominated
> by overhead (dots and glyphs) get a different API than operations which
> are dominated by rendering.
My numbers showed about 25% overhead for dots, 5% for glyphs. That's not
exactly "dominating".
>> I'm really hesitant to rely on the current damage reports for bounds of
>> my rendering. It feels very fragile for situations where you have an
>> operation decompose into multiple operations in one of your layers (like
>> Trapezoids, which have a fill then addtraps then a composite). We
>> certainly fought with this in EXA, and it's why I'd like to have an
>> explicit damage computation available for the args given in an op.
>
> I think the key is that we just don't have that much rendering code that
> would need fixing, so if we have to go touch every single function to
> change the arguments, now seems like a pretty good time.
I'd say it's about a decade late, seeing as the major distros are about
to switch to Wayland/Mir by default.
> And, as much of that code is in the core server now, we shouldn't see
> huge impacts on the drivers?
I wish. Our drivers have wrappers for all rendering hooks. Please don't
force gratuitous churn on them.
--
Earthling Michel Dänzer | http://www.amd.com
Libre software enthusiast | Mesa and X developer
More information about the xorg-devel
mailing list