[Mesa-dev] [PATCH 00/12] anv: Queries!

Jason Ekstrand jason at jlekstrand.net
Thu Mar 16 00:03:04 UTC 2017


This little patch series does a number of things.  The first three patches
fix bugs in the current query code.  These bugs have been causing rendering
corruptions in The Talos Principle.  The next 8 patches are various
clean-ups and bits of prep-work for implementing pipeline statistics
queries.  The final patch is a revival if Ilia's patch to implement
pipeline statistics queries.

As with Ilia's original patch, testing has been a bit light.  It's only
been tested using a hacked up vkcube (which only uses VS and FS) and the
terraintessellation demo from Sascha Willems which uses tessellation
shaders and polls vertex and tessellation statistics.  Even though the
testing hasn't been fantastic, everything seems to work and the values it's
kicking out look fairly reasonable.

Ilia Mirkin (1):
  anv: implement pipeline statistics queries

Jason Ekstrand (11):
  anv/query: Fix the location of timestamp availability
  anv/query: Invalidate the correct range
  anv/GetQueryPoolResults: Actually implement the spec
  genxml: Make MI_STORE_DATA_IMM have a single 64-bit data field
  anv/query: Let 32-bit values wrap
  anv/query: Move the available bits to the front
  anv/query: Use a variable-length slot size
  anv/query: Add a helper for writing a query pool result
  genxml: Add pipeline statistics registers on gen7+
  anv/query: Break GPU query calculation into a helper
  anv/query: Rework store_query_result

 src/intel/genxml/gen6.xml      |   3 +-
 src/intel/genxml/gen7.xml      |  47 ++++-
 src/intel/genxml/gen75.xml     |  47 ++++-
 src/intel/genxml/gen8.xml      |  47 ++++-
 src/intel/genxml/gen9.xml      |  47 ++++-
 src/intel/vulkan/anv_device.c  |   2 +-
 src/intel/vulkan/anv_private.h |  10 +-
 src/intel/vulkan/genX_query.c  | 435 ++++++++++++++++++++++++++++++++---------
 8 files changed, 528 insertions(+), 110 deletions(-)

-- 
2.5.0.400.gff86faf



More information about the mesa-dev mailing list