[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200415054050.31645-1-irogers@google.com>
Date: Tue, 14 Apr 2020 22:40:47 -0700
From: Ian Rogers <irogers@...gle.com>
To: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...hat.com>,
Namhyung Kim <namhyung@...nel.org>,
Petr Mladek <pmladek@...e.com>,
Andrey Zhizhikin <andrey.z@...il.com>,
Kefeng Wang <wangkefeng.wang@...wei.com>,
Thomas Gleixner <tglx@...utronix.de>,
Kan Liang <kan.liang@...ux.intel.com>,
linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org
Cc: Stephane Eranian <eranian@...gle.com>,
Ian Rogers <irogers@...gle.com>
Subject: [PATCH v5 0/3] perf synthetic events
Add a multi-threaded version of the internals synthesize benchmark. It
attempts to compute a time per event synthesized, but as it is reading
/proc there are issues:
- permissions if not run as root
- "random" nature of /proc
By default the benchmark is disabled but can be enabled with a
flag. It has been useful in gauging the value of multi-threaded
improvements not included here as their value appears minimal.
The patch set includes 2 patches that improve synthesis performance
and updates the benchmark numbers:
https://lore.kernel.org/lkml/20200411064248.247530-1-irogers@google.com/
v4 added a missing test file
v3 improved documenation, return values and added testing to the io framework
following feedback from namhyung@...nel.org.
v2 addressed single threaded synthesize benchmark issues from jolsa@...hat.com
https://lore.kernel.org/lkml/20200402154357.107873-1-irogers@google.com/
Ian Rogers (3):
perf bench: add a multi-threaded synthesize benchmark
tools api: add a lightweight buffered reading api
perf synthetic events: Remove use of sscanf from /proc reading
tools/lib/api/io.h | 112 +++++++++++
tools/perf/bench/synthesize.c | 211 +++++++++++++++++---
tools/perf/tests/Build | 1 +
tools/perf/tests/api-io.c | 304 +++++++++++++++++++++++++++++
tools/perf/tests/builtin-test.c | 4 +
tools/perf/tests/tests.h | 1 +
tools/perf/util/synthetic-events.c | 157 ++++++++++-----
7 files changed, 713 insertions(+), 77 deletions(-)
create mode 100644 tools/lib/api/io.h
create mode 100644 tools/perf/tests/api-io.c
--
2.26.0.110.g2183baf09c-goog
Powered by blists - more mailing lists