From 6f2947fa79f9480934b17cc913a8bcdfbe9ffe45 Mon Sep 17 00:00:00 2001 From: Marek Olšák Date: Sat, 27 May 2017 12:13:34 +0200 Subject: radeonsi: decrease the number of compiler threads to num CPUs - 1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reserve one core for other things (like draw calls). Reviewed-by: Nicolai Hähnle --- src/gallium/drivers/radeonsi/si_pipe.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/gallium/drivers/radeonsi') diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c index bbb5ea660d6..0c2f6b37dba 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.c +++ b/src/gallium/drivers/radeonsi/si_pipe.c @@ -882,8 +882,11 @@ struct pipe_screen *radeonsi_screen_create(struct radeon_winsys *ws) return NULL; } - /* Only enable as many threads as we have target machines and CPUs. */ + /* Only enable as many threads as we have target machines, but at most + * the number of CPUs - 1 if there is more than one. + */ num_cpus = sysconf(_SC_NPROCESSORS_ONLN); + num_cpus = MAX2(1, num_cpus - 1); num_compiler_threads = MIN2(num_cpus, ARRAY_SIZE(sscreen->tm)); if (!util_queue_init(&sscreen->shader_compiler_queue, "si_shader", -- cgit v1.2.3