[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240214063708.972376-1-irogers@google.com>
Date: Tue, 13 Feb 2024 22:37:02 -0800
From: Ian Rogers <irogers@...gle.com>
To: Peter Zijlstra <peterz@...radead.org>, Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>, Namhyung Kim <namhyung@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>, Jiri Olsa <jolsa@...nel.org>,
Ian Rogers <irogers@...gle.com>, Adrian Hunter <adrian.hunter@...el.com>,
Oliver Upton <oliver.upton@...ux.dev>, Yang Jihong <yangjihong1@...wei.com>,
linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org,
bpf@...r.kernel.org
Subject: [PATCH v1 0/6] Thread memory improvements and fixes
The next 6 patches from:
https://lore.kernel.org/lkml/20240202061532.1939474-1-irogers@google.com/
now the initial maps fixes have landed:
https://lore.kernel.org/all/20240210031746.4057262-1-irogers@google.com/
Separate out and reimplement threads to use a hashmap for lower memory
consumption and faster look up. The fixes a regression in memory usage
where reference count checking switched to using non-invasive tree
nodes. Reduce threads default size by 32 times and improve locking
discipline. Also, fix regressions where tids had become unordered to
make `perf report --tasks` and `perf trace --summary` output easier to
read.
Ian Rogers (6):
perf report: Sort child tasks by tid
perf trace: Ignore thread hashing in summary
perf machine: Move fprintf to for_each loop and a callback
perf threads: Move threads to its own files
perf threads: Switch from rbtree to hashmap
perf threads: Reduce table size from 256 to 8
tools/perf/builtin-report.c | 203 ++++++++-------
tools/perf/builtin-trace.c | 41 +--
tools/perf/util/Build | 1 +
tools/perf/util/bpf_lock_contention.c | 8 +-
tools/perf/util/machine.c | 344 +++++++-------------------
tools/perf/util/machine.h | 30 +--
tools/perf/util/rb_resort.h | 5 -
tools/perf/util/thread.c | 2 +-
tools/perf/util/thread.h | 6 -
tools/perf/util/threads.c | 186 ++++++++++++++
tools/perf/util/threads.h | 35 +++
11 files changed, 464 insertions(+), 397 deletions(-)
create mode 100644 tools/perf/util/threads.c
create mode 100644 tools/perf/util/threads.h
--
2.43.0.687.g38aa6559b0-goog
Powered by blists - more mailing lists