[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1449734015-9148-1-git-send-email-namhyung@kernel.org>
Date: Thu, 10 Dec 2015 16:53:19 +0900
From: Namhyung Kim <namhyung@...nel.org>
To: Arnaldo Carvalho de Melo <acme@...nel.org>
Cc: Ingo Molnar <mingo@...nel.org>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Jiri Olsa <jolsa@...hat.com>,
LKML <linux-kernel@...r.kernel.org>,
David Ahern <dsahern@...il.com>,
Frederic Weisbecker <fweisbec@...il.com>,
Andi Kleen <andi@...stfloor.org>,
Stephane Eranian <eranian@...gle.com>,
Adrian Hunter <adrian.hunter@...el.com>
Subject: [PATCHSET 00/16] perf top: Add multi-thread support (v1)
Hello,
This patchset if an attempt to support multi-threading in perf top.
In fact, perf top already run on two threads - a worker thread and a
display thread. However processing all samples with a single thread
in a large machine can have scalability problems.
This patchset extends it to have multiple worker threads to process
samples concurrently. Users can control the number of threads using
--num-thread option. And there's a collector thread for passing hist
entries from worker threads to the display thread.
This basically has same concept of my previous work with perf report
multi-thread support [1]. I decided to work on perf top first, since
it requires smaller changes. If this work finishes with a good
result, I'll apply it to perf report as well, and continue to work on
it. So please test (especially on large machines) and give feedbacks. :)
First 6 patches are fixes and cleanups which can be applied separately.
Rest implements multi-thread support and improves it.
You can get it from 'perf/top-threaded-v1' branch in my tree
git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf.git
Any comments are welcome!
Thanks,
Namhyung
[1] https://lkml.org/lkml/2015/10/2/16
Namhyung Kim (16):
perf top: Delete half-processed hist entries when exit
perf top: Fix and cleanup perf_top__record_precise_ip()
perf top: Factor out warnings about kernel addresses and symbols
perf top: Factor out warnings in perf_top__record_precise_ip()
perf top: Show warning messages in the display thread
perf top: Get rid of access to hists->lock in perf_top__record_precise_ip()
perf hists: Pass hists struct to hist_entry_iter struct
perf tools: Export a couple of hist functions
perf tools: Update hist entry's hists pointer
perf hist: Add events_stats__add() and hists__add_stats()
perf top: Implement basic parallel processing
perf tools: Reduce lock contention when processing events
perf top: Protect the seen list using mutex
perf top: Separate struct perf_top_stats
perf top: Add --num-thread option
perf tools: Skip dso front cache for multi-threaded lookup
tools/perf/builtin-report.c | 1 +
tools/perf/builtin-top.c | 491 +++++++++++++++++++++++++++++---------
tools/perf/tests/hists_cumulate.c | 1 +
tools/perf/tests/hists_filter.c | 1 +
tools/perf/tests/hists_output.c | 1 +
tools/perf/util/event.c | 7 +-
tools/perf/util/hist.c | 98 ++++++--
tools/perf/util/hist.h | 12 +
tools/perf/util/machine.c | 19 +-
tools/perf/util/symbol.c | 3 +-
tools/perf/util/symbol.h | 3 +-
tools/perf/util/top.c | 18 +-
tools/perf/util/top.h | 14 +-
13 files changed, 514 insertions(+), 155 deletions(-)
--
2.6.2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists