From: Willy Tarreau Date: Tue, 30 Jun 2020 12:29:02 +0000 (+0200) Subject: MINOR: pools: increase MAX_BASE_POOLS to 64 X-Git-Tag: v2.2-dev12~43 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=daf8aa62a8d0210f81db5c93235da19d5ed22ab3;p=thirdparty%2Fhaproxy.git MINOR: pools: increase MAX_BASE_POOLS to 64 When not sharing pools (i.e. when building with -DDEBUG_DONT_SHARE_POOLS) we have about 47 pools right now, while MAX_BASE_POOLS is only 32, meaning that only the first 32 ones will benefit from a per-thread cache entry. This totally kills performance when pools are not shared (roughly -20%). Let's double the limit to gain some margin, and make it possible to set it as a build option. It might be useful to backport this to stable versions as they're likely to be affected as well. --- diff --git a/include/haproxy/pool-t.h b/include/haproxy/pool-t.h index e81004cf80..ac8f17e252 100644 --- a/include/haproxy/pool-t.h +++ b/include/haproxy/pool-t.h @@ -65,7 +65,9 @@ #define POOL_LINK(pool, item) ((void **)(item)) #endif -#define MAX_BASE_POOLS 32 +#ifndef MAX_BASE_POOLS +#define MAX_BASE_POOLS 64 +#endif #define POOL_AVG_SAMPLES 1024