[Mesa-dev] Gen6+ hardware contexts & query object improvements

Eric Anholt eric at anholt.net
Fri May 17 13:00:19 PDT 2013


Kenneth Graunke <kenneth at whitecape.org> writes:

> Hello!
>
> This patch series bumps the kernel requirement to 3.6 for Gen6+,
> meaning that we actually get to rely on hardware context support.
> That's a little painful, but even Debian ships 3.8 now, and this
> isn't going to make it into an actual release for several more
> months.
>
> It then splits our query code into Gen4-5 and Gen6+ versions.  The new
> Gen6+ version is a lot simpler since hardware contexts guarantee that
> our statistics registers don't get polluted with data from other
> programs running on the system.  It should be more efficient, which
> may help games like Minecraft (though I haven't measured).
>
> Finally, it implements the GL_PRIMITIVES_GENERATED and
> GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN queries via hardware counters
> rather than manually counting on the CPU.  This paves the way for
> geometry shader support (which can output multiple primitives, breaking
> our CPU-side tracking), and should allow us to enable hardware primitive
> restart in a few more cases once a few more things are tidied.
>
> The next step is to eliminate the use of SOL reset and save/restore the
> transform feedback offsets directly.  Then we can turn on hardware
> primitive restart more aggressively and implement a few more transform
> feedback extensions.

Uncommented patches, or obvious changes to the commented patches are:

Reviewed-by: Eric Anholt <eric at anholt.net>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20130517/97271a45/attachment.pgp>


More information about the mesa-dev mailing list