iris: Don't allocate a BO per query object
authorSagar Ghuge <sagar.ghuge@intel.com>
Tue, 15 Jan 2019 22:15:07 +0000 (14:15 -0800)
committerKenneth Graunke <kenneth@whitecape.org>
Thu, 21 Feb 2019 18:26:11 +0000 (10:26 -0800)
commitc24a574e6c78db038d7aa6c4605bf6a8a892f7ab
tree17f9f852fdba7f52103e86db7f63c7a427961387
parenta1ebac3750e3eb1e8caab85eeddf4d98c7d29167
iris: Don't allocate a BO per query object

Instead of allocating 4K BO per query object, we can create a large blob
of memory and split it into pieces as required.

Having one BO for multiple query objects, we don't want to wait on all
of them, instead when we write last snapshot, we create a sync point, and
check syncpoints while waiting on particular object.

Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
src/gallium/drivers/iris/iris_context.c
src/gallium/drivers/iris/iris_context.h
src/gallium/drivers/iris/iris_fence.c
src/gallium/drivers/iris/iris_fence.h
src/gallium/drivers/iris/iris_query.c