From dc9e08b0c3b04ba77ed59b8700e9f43edccb3168 Mon Sep 17 00:00:00 2001 From: Rob Clark Date: Sat, 26 Aug 2017 11:55:05 -0400 Subject: [PATCH] freedreno: skip batch-cache for compute shaders It is kind of pointless for compute, and avoids issues with apps kicking off more than 32 compute shaders at once. Signed-off-by: Rob Clark Cc: "17.2" --- src/gallium/drivers/freedreno/freedreno_draw.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/gallium/drivers/freedreno/freedreno_draw.c b/src/gallium/drivers/freedreno/freedreno_draw.c index a4a1975..f2ccfc5 100644 --- a/src/gallium/drivers/freedreno/freedreno_draw.c +++ b/src/gallium/drivers/freedreno/freedreno_draw.c @@ -428,13 +428,7 @@ fd_launch_grid(struct pipe_context *pctx, const struct pipe_grid_info *info) struct fd_batch *batch, *save_batch = NULL; unsigned i; - /* TODO maybe we don't want to allocate and flush a batch each time? - * We could use a special bogus (ie. won't match any fb state) key - * in the batch-case for compute shaders, and rely on the rest of - * the dependency tracking mechanism to tell us when the compute - * batch needs to be flushed? - */ - batch = fd_bc_alloc_batch(&ctx->screen->batch_cache, ctx); + batch = fd_batch_create(ctx); fd_batch_reference(&save_batch, ctx->batch); fd_batch_reference(&ctx->batch, batch); -- 2.7.4