summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/bin/mem-phys-addr-report
diff options
context:
space:
mode:
authorKan Liang <Kan.liang@intel.com>2018-01-04 23:59:55 +0300
committerArnaldo Carvalho de Melo <acme@redhat.com>2018-01-12 17:06:57 +0300
commit41013f0c095980775e0746272873891ca7c28fb1 (patch)
treeb9bf612e5b54740e7ac40d5beeb088c8e7c26f1e /tools/perf/scripts/python/bin/mem-phys-addr-report
parentdd8bd53ab86133327412e74bf5ba31a8ec2826d4 (diff)
downloadlinux-41013f0c095980775e0746272873891ca7c28fb1.tar.xz
perf script python: Add script to profile and resolve physical mem type
There could be different types of memory in the system. E.g normal System Memory, Persistent Memory. To understand how the workload maps to those memories, it's important to know the I/O statistics of them. Perf can collect physical addresses, but those are raw data. It still needs extra work to resolve the physical addresses. Provide a script to facilitate the physical addresses resolving and I/O statistics. Profile with MEM_INST_RETIRED.ALL_LOADS or MEM_UOPS_RETIRED.ALL_LOADS event if any of them is available. Look up the /proc/iomem and resolve the physical address. Provide memory type summary. Here is an example output: # perf script report mem-phys-addr Event: mem_inst_retired.all_loads:P Memory type count percentage ---------------------------------------- ----------- ----------- System RAM 74 53.2% Persistent Memory 55 39.6% N/A --- Changes since V2: - Apply the new license rules. - Add comments for globals Changes since V1: - Do not mix DLA and Load Latency. Do not compare the loads and stores. Only profile the loads. - Use event name to replace the RAW event Signed-off-by: Kan Liang <Kan.liang@intel.com> Reviewed-by: Andi Kleen <ak@linux.intel.com> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Philippe Ombredanne <pombredanne@nexb.com> Cc: Stephane Eranian <eranian@google.com> Link: https://lkml.kernel.org/r/1515099595-34770-1-git-send-email-kan.liang@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python/bin/mem-phys-addr-report')
-rw-r--r--tools/perf/scripts/python/bin/mem-phys-addr-report3
1 files changed, 3 insertions, 0 deletions
diff --git a/tools/perf/scripts/python/bin/mem-phys-addr-report b/tools/perf/scripts/python/bin/mem-phys-addr-report
new file mode 100644
index 000000000000..3f2b847e2eab
--- /dev/null
+++ b/tools/perf/scripts/python/bin/mem-phys-addr-report
@@ -0,0 +1,3 @@
+#!/bin/bash
+# description: resolve physical address samples
+perf script $@ -s "$PERF_EXEC_PATH"/scripts/python/mem-phys-addr.py