Re: State of Linux graphics

Keith Whitwell
2005-09-01T17:27:09Z

Ian Romanick wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Brian Paul wrote:
>
>
>>It's other (non-orientation) texture state I had in mind:
>>
>>- the texel format (OpenGL has over 30 possible texture formats).
>>- texture size and borders
>>- the filtering mode (linear, nearest, etc)
>>- coordinate wrap mode (clamp, repeat, etc)
>>- env/combine mode
>>- multi-texture state
>
>
> Which is why it's such a good target for code generation. You'd
> generate the texel fetch routine, use that to generate the wraped texel
> fetch routine, use that to generate the filtered texel fetch routine,
> use that to generate the env/combine routines.
>
> Once-upon-a-time I had the first part and some of the second part
> written. Doing just that little bit was slightly faster on a Pentium 3
> and slightly slower on a Pentium 4. I suspect the problem was that I
> wasn't caching the generated code smart enough, so it was it trashing
> the CPU cache. The other problem is that, in the absence of an
> assembler in Mesa, it was really painful to change the code stubs.

Note that the last part is now partially addressed at least - Mesa has
an integrated and simple runtime assembler for x86 and sse. There are
some missing pieces and rough edges, but it's working and useful as it
stands.

Keith