mesa/src
Jason Ekstrand b2c97bc789 anv/query: Busy-wait for available query entries
Before, we were just looking at whether or not the user wanted us to
wait and waiting on the BO.  Some clients, such as the Serious engine,
use a single query pool for hundreds of individual query results where
the writes for those queries may be split across several command
buffers.  In this scenario, the individual query we're looking for may
become available long before the BO is idle so waiting on the query pool
BO to be finished is wasteful. This commit makes us instead busy-loop on
each query until it's available.

This significantly reduces pipeline bubbles and improves performance of
The Talos Principle on medium settings (where the GPU isn't overloaded
with drawing) by around 20% on my SkyLake gt4.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Tested-by: Eero Tamminen <eero.t.tamminen@intel.com>
Tested-by: Grazvydas Ignotas <notasas@gmail.com>
2017-04-05 21:17:11 -07:00
..
amd amd/addrlib: automake: add all headers to the tarball 2017-04-05 13:16:28 +01:00
compiler glsl: add gl_SubGroup*ARB builtins 2017-04-05 15:25:56 +02:00
egl Android: drop Android 4.4 (KitKat) support 2017-03-22 17:53:31 +00:00
gallium swr: [rasterizer core] SIMD16 Frontend WIP 2017-04-05 18:20:45 -05:00
gbm gbm/dri: Check dri extension version before flush after unmap 2017-03-31 10:25:46 +02:00
getopt Introduce .editorconfig 2016-08-31 17:06:54 -07:00
glx glx: Remove #include <GL/glxint.h> 2017-03-28 14:48:12 -04:00
gtest gtest: Update to 1.8.0. 2017-01-20 11:40:52 -08:00
hgl glapi/hgl: remove the final user of _glapi_check_table() 2016-10-06 15:03:46 +01:00
intel anv/query: Busy-wait for available query entries 2017-04-05 21:17:11 -07:00
loader loader: use drmGetDevice[s]2 API 2017-03-15 11:37:55 +00:00
mapi mesa: add GL_ARB_shader_ballot boilerplate 2017-04-05 15:25:40 +02:00
mesa mesa: use internal function when deleting buffers 2017-04-06 08:25:36 +10:00
util util: fix MSVC warning in u_align_u32() 2017-04-03 13:09:05 -06:00
vulkan vulkan/wsi/wayland: Pass damage through to the compositor 2017-04-03 13:51:08 -07:00
Makefile.am intel/vulkan: Get rid of recursive make 2017-03-13 11:16:35 +00:00
SConscript