Messages in this thread Patch in this message | | | Date | Tue, 17 Apr 2007 09:10:49 +0200 | From | Peter Zijlstra <> | Subject | [PATCH 03/12] lib: dampen the percpu_counter FBC_BATCH |
| |
With the current logic the percpu_counter's accuracy delta is quadric wrt the number of cpus in the system, reduce this to O(n ln n).
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> --- include/linux/percpu_counter.h | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-)
Index: linux-2.6-mm/include/linux/percpu_counter.h =================================================================== --- linux-2.6-mm.orig/include/linux/percpu_counter.h +++ linux-2.6-mm/include/linux/percpu_counter.h @@ -11,6 +11,7 @@ #include <linux/threads.h> #include <linux/percpu.h> #include <linux/types.h> +#include <linux/log2.h> #ifdef CONFIG_SMP @@ -20,11 +21,7 @@ struct percpu_counter { s32 *counters; }; -#if NR_CPUS >= 16 -#define FBC_BATCH (NR_CPUS*2) -#else -#define FBC_BATCH (NR_CPUS*4) -#endif +#define FBC_BATCH (8*ilog2(NR_CPUS)) static inline void percpu_counter_init(struct percpu_counter *fbc, s64 amount) { --
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |