From: Peter Zijlstra <peterz@infradead.org>
To: Stephane Eranian <eranian@google.com>
Cc: linux-kernel@vger.kernel.org, mingo@elte.hu, ak@linux.intel.com,
acme@redhat.com, jolsa@redhat.com, namhyung.kim@lge.com
Subject: Re: [PATCH 0/8] perf: add ability to sample physical data addresses
Date: Mon, 24 Jun 2013 10:43:38 +0200 [thread overview]
Message-ID: <20130624084338.GI28407@twins.programming.kicks-ass.net> (raw)
In-Reply-To: <1371824448-7306-1-git-send-email-eranian@google.com>
On Fri, Jun 21, 2013 at 04:20:40PM +0200, Stephane Eranian wrote:
> This patch series extends perf_events with the ability to sample
> physical data addresses. This is useful with the memory access
> sampling mode added just recently. In particular, it helps
> disambiguate data addresses between two processes, such as
> in the case of a shared memory segment mapped at different
> addresses in different processes.
>
> The patch adds the PERF_SAMPLE_PHYS_ADDR sample_type.
> A 64-bit address is added to the sample record for
> the corresponding event.
>
> On Intel X86, it is used with the PEBS Load Latency
> support. On other architectures, zero is returned.
>
> The patch series also demonstrates the use of this
> new feature by extending perf report, mem, record
> with a --phys-addr option. When enable, it will
> capture physical data address and display it.
> This is implemented as a new sort_order (symbol_paddr).
>
So I'm a bit puzzled by this thing...
What exact problem are we trying to solve here? Only the shared memory
mapped at different addresses between processes thing mentioned earlier?
The big problem I see with all this is that typically memory is subject
to being moved about at random; be it either from paging, compaction,
NUMA policies or explicit page migration.
Such would completely shatter physical page relations.
If the shared memory thing is really the issue, doesn't perf already
have the process memory layout (/proc/$PID/maps and aux stream mmap
updates) with which it can compute map relative offsets and compare
thusly?
next prev parent reply other threads:[~2013-06-24 8:43 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-21 14:20 [PATCH 0/8] perf: add ability to sample physical data addresses Stephane Eranian
2013-06-21 14:20 ` [PATCH 1/8] perf,x86: disable PEBS-LL in intel_pmu_pebs_disable() Stephane Eranian
2013-06-24 8:44 ` Peter Zijlstra
2013-06-26 7:35 ` Stephane Eranian
2013-06-27 9:01 ` [tip:perf/core] perf/x86: Disable " tip-bot for Stephane Eranian
2013-06-21 14:20 ` [PATCH 2/8] perf,x86: drop event->flags and use hw.constraint->flags Stephane Eranian
2013-06-24 8:45 ` Peter Zijlstra
2013-06-26 7:36 ` Stephane Eranian
2013-06-26 10:36 ` Peter Zijlstra
2013-06-27 10:23 ` Stephane Eranian
2013-06-27 10:48 ` Peter Zijlstra
2013-06-27 11:01 ` Stephane Eranian
2013-06-27 11:14 ` Peter Zijlstra
2013-06-27 12:33 ` Stephane Eranian
2013-06-27 14:10 ` Peter Zijlstra
2013-06-21 14:20 ` [PATCH 3/8] perf,x86: add uvirt_to_phys_nmi helper function Stephane Eranian
2013-06-21 14:20 ` [PATCH 4/8] perf: add PERF_SAMPLE_PHYS_ADDR sample type Stephane Eranian
2013-06-21 14:20 ` [PATCH 5/8] perf,x86: add support for PERF_SAMPLE_PHYS_ADDR for PEBS-LL Stephane Eranian
2013-06-21 14:20 ` [PATCH 6/8] perf tools: add infrastructure to handle PERF_SAMPLE_PHYS_ADDR Stephane Eranian
2013-06-21 14:20 ` [PATCH 7/8] perf record: add option to sample physical load/store addresses Stephane Eranian
2013-06-21 14:20 ` [PATCH 8/8] perf mem: add physical addr sampling support Stephane Eranian
2013-06-23 21:58 ` [PATCH 0/8] perf: add ability to sample physical data addresses Jiri Olsa
2013-06-24 8:16 ` Stephane Eranian
2013-06-24 8:45 ` Jiri Olsa
2013-06-24 8:43 ` Peter Zijlstra [this message]
2013-06-25 9:59 ` Stephane Eranian
2013-06-25 10:47 ` Peter Zijlstra
2013-06-25 10:51 ` Ingo Molnar
2013-06-26 10:33 ` Peter Zijlstra
2013-06-26 19:10 ` Stephane Eranian
2013-06-28 9:58 ` Peter Zijlstra
2013-07-05 22:48 ` Stephane Eranian
2013-07-08 8:19 ` Peter Zijlstra
2013-07-09 6:02 ` Stephane Eranian
2013-07-30 8:02 ` Stephane Eranian
2013-07-30 8:37 ` Peter Zijlstra
2013-07-30 8:51 ` Stephane Eranian
2013-07-30 9:02 ` Peter Zijlstra
2013-07-30 13:09 ` Stephane Eranian
2013-07-30 14:21 ` Stephane Eranian
2013-07-30 14:50 ` David Ahern
2013-07-30 14:53 ` Stephane Eranian
2013-07-30 14:59 ` David Ahern
2013-07-30 15:52 ` Peter Zijlstra
2013-07-30 16:09 ` Stephane Eranian
2013-07-30 16:16 ` Peter Zijlstra
2013-06-26 13:29 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130624084338.GI28407@twins.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=acme@redhat.com \
--cc=ak@linux.intel.com \
--cc=eranian@google.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=namhyung.kim@lge.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox