[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240904013127.75064-1-mathieu.desnoyers@efficios.com>
Date: Tue, 3 Sep 2024 21:31:26 -0400
From: Mathieu Desnoyers <mathieu.desnoyers@...icios.com>
To: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>
Cc: linux-kernel@...r.kernel.org,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
Valentin Schneider <vschneid@...hat.com>,
Mel Gorman <mgorman@...e.de>,
Steven Rostedt <rostedt@...dmis.org>,
Vincent Guittot <vincent.guittot@...aro.org>,
Dietmar Eggemann <dietmar.eggemann@....com>,
Ben Segall <bsegall@...gle.com>,
Yury Norov <yury.norov@...il.com>,
Rasmus Villemoes <linux@...musvillemoes.dk>
Subject: [RFC PATCH v1 0/1] sched: Improve cache locality of RSEQ concurrency IDs
Intermittent workloads behaving in bursts spaced by more than 100ms
on each CPU exhibit bad cache locality and degraded performance compared
to purely per-cpu data indexing, because concurrency IDs are allocated
over various CPUs and cores, therefore losing cache locality of the
associated data.
This series addresses this shortcoming. I observed speedups up to 16.7x
compared to plain mm_cid indexing in benchmarks.
It applies on top of v6.10.6.
This deprecates the prior "sched: NUMA-aware per-memory-map concurrency
IDs" patch series with a simpler and more general approach.
Feedback is welcome!
Thanks,
Mathieu
Cc: Valentin Schneider <vschneid@...hat.com>
Cc: Mel Gorman <mgorman@...e.de>
Cc: Steven Rostedt <rostedt@...dmis.org>
Cc: Vincent Guittot <vincent.guittot@...aro.org>
Cc: Dietmar Eggemann <dietmar.eggemann@....com>
Cc: Ben Segall <bsegall@...gle.com>
Cc: Yury Norov <yury.norov@...il.com>
Cc: Rasmus Villemoes <linux@...musvillemoes.dk>
Mathieu Desnoyers (1):
sched: Improve cache locality of RSEQ concurrency IDs for intermittent
workloads
fs/exec.c | 2 +-
include/linux/mm_types.h | 75 +++++++++++++++++++++++++++++++++++-----
kernel/fork.c | 2 +-
kernel/sched/core.c | 7 ++--
kernel/sched/sched.h | 47 +++++++++++++++++--------
5 files changed, 106 insertions(+), 27 deletions(-)
--
2.39.2
Powered by blists - more mailing lists