From a771dd8f25696004cb96bd19c6a8a67faba5dcb6 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Thu, 21 May 2020 13:38:03 +1000 Subject: [PATCH] llvmpipe: compute shaders work better with all the threads. I got to benchmarking some vulkan compute benchmark and wondered why my CPUs weren't being saturated, helps if you actually wake up all the threads in the threadpool. Fixes: 1b24e3ba756b (llvmpipe: add compute threadpool + mutex) Reviewed-by: Roland Scheidegger Part-of: (cherry picked from commit 22554e1fbc20d0f642e952fda13d8f2631a898eb) --- .pick_status.json | 2 +- src/gallium/drivers/llvmpipe/lp_cs_tpool.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index afcd499212a..a538b532ff5 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -2704,7 +2704,7 @@ "description": "llvmpipe: compute shaders work better with all the threads.", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "1b24e3ba756ba4951086d0b1b351364acbd3af1d" }, diff --git a/src/gallium/drivers/llvmpipe/lp_cs_tpool.c b/src/gallium/drivers/llvmpipe/lp_cs_tpool.c index 4a23b6a2a95..ea284468512 100644 --- a/src/gallium/drivers/llvmpipe/lp_cs_tpool.c +++ b/src/gallium/drivers/llvmpipe/lp_cs_tpool.c @@ -137,7 +137,7 @@ lp_cs_tpool_queue_task(struct lp_cs_tpool *pool, list_addtail(&task->list, &pool->workqueue); - cnd_signal(&pool->new_work); + cnd_broadcast(&pool->new_work); mtx_unlock(&pool->m); return task; }