[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220718164312.3994191-1-irogers@google.com>
Date: Mon, 18 Jul 2022 09:43:09 -0700
From: Ian Rogers <irogers@...gle.com>
To: perry.taylor@...el.com, caleb.biggers@...el.com,
kshipra.bopardikar@...el.com,
Kan Liang <kan.liang@...ux.intel.com>,
Zhengjun Xing <zhengjun.xing@...ux.intel.com>,
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>,
Maxime Coquelin <mcoquelin.stm32@...il.com>,
Alexandre Torgue <alexandre.torgue@...s.st.com>,
Andi Kleen <ak@...ux.intel.com>,
James Clark <james.clark@....com>,
John Garry <john.garry@...wei.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 v4 0/3] Add arch TSC frequency information
The first patch adds the #system_tsc_freq literal to expr.c and
computes it via cpuid. The second patches adds support for "older"
processors by computing the value via /proc/cpuinfo. The third patch
adds a test then the computation looks somewhat sensible.
Such a literal is useful to calculate things like the average
frequency [1]. The TSC frequency isn't exposed by sysfs although some
experimental drivers look to add it [2].
[1] https://github.com/intel/perfmon-metrics/blob/5ad9ef7056f31075e8178b9f1fb732af183b2c8d/SKX/metrics/perf/skx_metric_perf.json#L11
[2] https://github.com/trailofbits/tsc_freq_khz
v4. Modified the patch order and separated out the test.
v3. Added the cpuid approach from Kan Liang.
v2. Adds warnings to make clear if things have changed/broken on future
Intel platforms. It also adds caching and an Intel specific that a
value is computed.
Ian Rogers (2):
perf tsc: Add cpuinfo fall back for arch_get_tsc_freq
perf test: Add test for #system_tsc_freq in metrics
Kan Liang (1):
perf tsc: Add arch TSC frequency information
tools/perf/arch/x86/util/cpuid.h | 34 ++++++++++++++
tools/perf/arch/x86/util/header.c | 27 +++++------
tools/perf/arch/x86/util/tsc.c | 77 +++++++++++++++++++++++++++++++
tools/perf/tests/expr.c | 13 ++++++
tools/perf/util/expr.c | 13 ++++++
tools/perf/util/tsc.h | 1 +
6 files changed, 149 insertions(+), 16 deletions(-)
create mode 100644 tools/perf/arch/x86/util/cpuid.h
--
2.37.0.170.g444d1eabd0-goog
Powered by blists - more mailing lists