On Tue, Feb 13, 2024 at 10:37 PM Ian Rogers <irogers@xxxxxxxxxx> wrote: > > The next 6 patches from: > https://lore.kernel.org/lkml/20240202061532.1939474-1-irogers@xxxxxxxxxx/ > now the initial maps fixes have landed: > https://lore.kernel.org/all/20240210031746.4057262-1-irogers@xxxxxxxxxx/ > > 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 Arnaldo/Namhyung, anything outstanding that needs addressing in a v2? I'm looking for reviewed-by/acked-by tags :-) Thanks, Ian > -- > 2.43.0.687.g38aa6559b0-goog >