From: Vikas Shivappa <vikas.shivappa@linux.intel.com>
To: vikas.shivappa@intel.com, vikas.shivappa@linux.intel.com
Cc: davidcc@google.com, eranian@google.com,
linux-kernel@vger.kernel.org, x86@kernel.org, hpa@zytor.com,
tglx@linutronix.de, mingo@kernel.org, peterz@infradead.org,
ravi.v.shankar@intel.com, tony.luck@intel.com,
fenghua.yu@intel.com, andi.kleen@intel.com,
h.peter.anvin@intel.com
Subject: [PATCH 01/12] Documentation, x86/cqm: Intel Resource Monitoring Documentation
Date: Fri, 6 Jan 2017 13:59:54 -0800 [thread overview]
Message-ID: <1483740005-23499-2-git-send-email-vikas.shivappa@linux.intel.com> (raw)
In-Reply-To: <1483740005-23499-1-git-send-email-vikas.shivappa@linux.intel.com>
Add documentation of usage of cqm and mbm events using perf interface
and examples.
Signed-off-by: Vikas Shivappa <vikas.shivappa@linux.intel.com>
---
Documentation/x86/intel_rdt_mon_ui.txt | 62 ++++++++++++++++++++++++++++++++++
1 file changed, 62 insertions(+)
create mode 100644 Documentation/x86/intel_rdt_mon_ui.txt
diff --git a/Documentation/x86/intel_rdt_mon_ui.txt b/Documentation/x86/intel_rdt_mon_ui.txt
new file mode 100644
index 0000000..881fa58
--- /dev/null
+++ b/Documentation/x86/intel_rdt_mon_ui.txt
@@ -0,0 +1,62 @@
+User Interface for Resource Monitoring in Intel Resource Director Technology
+
+Vikas Shivappa<vikas.shivappa@intel.com>
+David Carrillo-Cisneros<davidcc@google.com>
+Stephane Eranian <eranian@google.com>
+
+This feature is enabled by the CONFIG_INTEL_RDT_M Kconfig and the
+X86 /proc/cpuinfo flag bits cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local
+
+Resource Monitoring
+-------------------
+Resource Monitoring includes cqm(cache quality monitoring) and
+mbm(memory bandwidth monitoring) and uses the perf interface. A light
+weight interface to enable monitoring without perf is enabled as well.
+
+CQM provides OS/VMM a way to monitor llc occupancy. It measures the
+amount of L3 cache fills per task or cgroup.
+
+MBM provides OS/VMM a way to monitor bandwidth from one level of cache
+to another. The current patches support L3 external bandwidth
+monitoring. It supports both 'local bandwidth' and 'total bandwidth'
+monitoring for the socket. Local bandwidth measures the amount of data
+sent through the memory controller on the socket and total b/w measures
+the total system bandwidth.
+
+To check the monitoring events enabled:
+
+$ ./tools/perf/perf list | grep -i cqm
+intel_cqm/llc_occupancy/ [Kernel PMU event]
+intel_cqm/local_bytes/ [Kernel PMU event]
+intel_cqm/total_bytes/ [Kernel PMU event]
+
+Monitoring tasks and cgroups using perf
+---------------------------------------
+Monitoring tasks and cgroup is like using any other perf event.
+
+$perf stat -I 1000 -e intel_cqm_llc/local_bytes/ -p PID1
+
+This will monitor the local_bytes event of the PID1 and report once
+every 1000ms
+
+$mkdir /sys/fs/cgroup/perf_event/p1
+$echo PID1 > /sys/fs/cgroup/perf_event/p1/tasks
+$echo PID2 > /sys/fs/cgroup/perf_event/p1/tasks
+
+$perf stat -I 1000 -e intel_cqm_llc/llc_occupancy/ -a -G p1
+
+This will monitor the llc_occupancy event of the perf cgroup p1 in
+interval mode.
+
+Hierarchical monitoring should work just like other events and users can
+also monitor a task with in a cgroup and the cgroup together, or
+different cgroups in the same hierarchy can be monitored together.
+
+The events are associated with RMIDs and are grouped when optimal. The
+RMIDs are limited hardware resources and if runout the events would just
+throw error on read.
+
+To obtain per package data for cgroups(package x) provide any cpu in the
+package as input to -C:
+
+$perf stat -I 1000 -e intel_cqm_llc/llc_occupancy/ -C <cpu_y on package_x> -G p1
--
1.9.1
next prev parent reply other threads:[~2017-01-06 22:27 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-06 21:59 [PATCH 00/12] Cqm2: Intel Cache quality monitoring fixes Vikas Shivappa
2017-01-06 21:59 ` Vikas Shivappa [this message]
2017-01-06 21:59 ` [PATCH 02/12] x86/cqm: Remove cqm recycling/conflict handling Vikas Shivappa
2017-01-06 21:59 ` [PATCH 03/12] x86/rdt: Add rdt common/cqm compile option Vikas Shivappa
2017-01-16 18:05 ` Thomas Gleixner
2017-01-17 17:25 ` Shivappa Vikas
2017-01-06 21:59 ` [PATCH 04/12] x86/cqm: Add Per pkg rmid support Vikas Shivappa
2017-01-16 18:15 ` [PATCH 04/12] x86/cqm: Add Per pkg rmid support\ Thomas Gleixner
2017-01-17 19:11 ` Shivappa Vikas
2017-01-06 21:59 ` [PATCH 05/12] x86/cqm,perf/core: Cgroup support prepare Vikas Shivappa
2017-01-17 12:11 ` Thomas Gleixner
2017-01-17 12:31 ` Peter Zijlstra
2017-01-18 2:14 ` Shivappa Vikas
2017-01-17 13:46 ` Thomas Gleixner
2017-01-17 20:22 ` Shivappa Vikas
2017-01-17 21:31 ` Thomas Gleixner
2017-01-17 15:26 ` Peter Zijlstra
2017-01-17 20:27 ` Shivappa Vikas
2017-01-06 21:59 ` [PATCH 06/12] x86/cqm: Add cgroup hierarchical monitoring support Vikas Shivappa
2017-01-17 14:07 ` Thomas Gleixner
2017-01-06 22:00 ` [PATCH 07/12] x86/rdt,cqm: Scheduling support update Vikas Shivappa
2017-01-17 21:58 ` Thomas Gleixner
2017-01-17 22:30 ` Shivappa Vikas
2017-01-06 22:00 ` [PATCH 08/12] x86/cqm: Add support for monitoring task and cgroup together Vikas Shivappa
2017-01-17 16:11 ` Thomas Gleixner
2017-01-06 22:00 ` [PATCH 09/12] x86/cqm: Add RMID reuse Vikas Shivappa
2017-01-17 16:59 ` Thomas Gleixner
2017-01-18 0:26 ` Shivappa Vikas
2017-01-06 22:00 ` [PATCH 10/12] perf/core,x86/cqm: Add read for Cgroup events,per pkg reads Vikas Shivappa
2017-01-06 22:00 ` [PATCH 11/12] perf/stat: fix bug in handling events in error state Vikas Shivappa
2017-01-06 22:00 ` [PATCH 12/12] perf/stat: revamp read error handling, snapshot and per_pkg events Vikas Shivappa
2017-01-17 17:31 ` [PATCH 00/12] Cqm2: Intel Cache quality monitoring fixes Thomas Gleixner
2017-01-18 2:38 ` Shivappa Vikas
2017-01-18 8:53 ` Thomas Gleixner
2017-01-18 9:56 ` Peter Zijlstra
2017-01-19 19:59 ` Shivappa Vikas
2017-01-18 19:41 ` Shivappa Vikas
2017-01-18 21:03 ` David Carrillo-Cisneros
2017-01-19 17:41 ` Thomas Gleixner
2017-01-20 7:37 ` David Carrillo-Cisneros
2017-01-20 8:30 ` Thomas Gleixner
2017-01-20 20:27 ` David Carrillo-Cisneros
2017-01-18 21:16 ` Yu, Fenghua
2017-01-19 2:09 ` David Carrillo-Cisneros
2017-01-19 16:58 ` David Carrillo-Cisneros
2017-01-19 17:54 ` Thomas Gleixner
2017-01-19 2:21 ` Vikas Shivappa
2017-01-19 6:45 ` Stephane Eranian
2017-01-19 18:03 ` Thomas Gleixner
2017-01-20 2:32 ` Vikas Shivappa
2017-01-20 7:58 ` David Carrillo-Cisneros
2017-01-20 13:28 ` Thomas Gleixner
2017-01-20 20:11 ` David Carrillo-Cisneros
2017-01-20 21:08 ` Shivappa Vikas
2017-01-20 21:44 ` David Carrillo-Cisneros
2017-01-20 23:51 ` Shivappa Vikas
2017-02-08 10:13 ` Peter Zijlstra
2017-01-23 9:47 ` Thomas Gleixner
2017-01-23 11:30 ` Peter Zijlstra
2017-02-01 20:08 ` Luck, Tony
2017-02-01 23:12 ` David Carrillo-Cisneros
2017-02-02 17:39 ` Luck, Tony
2017-02-02 19:33 ` Luck, Tony
2017-02-02 20:20 ` Shivappa Vikas
2017-02-02 20:22 ` David Carrillo-Cisneros
2017-02-02 23:41 ` Luck, Tony
2017-02-03 1:40 ` David Carrillo-Cisneros
2017-02-03 2:14 ` David Carrillo-Cisneros
2017-02-03 17:52 ` Luck, Tony
2017-02-03 21:08 ` David Carrillo-Cisneros
2017-02-03 22:24 ` Luck, Tony
2017-02-07 8:08 ` Stephane Eranian
2017-02-07 18:52 ` Luck, Tony
2017-02-08 19:31 ` Stephane Eranian
2017-02-07 20:10 ` Shivappa Vikas
2017-02-17 13:41 ` Thomas Gleixner
2017-02-06 18:54 ` Luck, Tony
2017-02-06 21:22 ` Luck, Tony
2017-02-06 21:36 ` Shivappa Vikas
2017-02-06 21:46 ` David Carrillo-Cisneros
2017-02-06 22:16 ` David Carrillo-Cisneros
2017-02-06 23:27 ` Luck, Tony
2017-02-07 0:33 ` David Carrillo-Cisneros
2017-02-02 0:35 ` Andi Kleen
2017-02-02 1:12 ` David Carrillo-Cisneros
2017-02-02 1:19 ` Andi Kleen
2017-02-02 1:22 ` Yu, Fenghua
2017-02-02 17:51 ` Shivappa Vikas
2017-02-08 10:11 ` Peter Zijlstra
2017-01-20 20:40 ` Shivappa Vikas
2017-01-20 19:31 ` Stephane Eranian
-- strict thread matches above, loose matches on Subject: below --
2017-01-06 21:56 [PATCH 00/12 V5] Cqm2: Intel Cache quality of " Vikas Shivappa
2017-01-06 21:56 ` [PATCH 01/12] Documentation, x86/cqm: Intel Resource Monitoring Documentation Vikas Shivappa
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=1483740005-23499-2-git-send-email-vikas.shivappa@linux.intel.com \
--to=vikas.shivappa@linux.intel.com \
--cc=andi.kleen@intel.com \
--cc=davidcc@google.com \
--cc=eranian@google.com \
--cc=fenghua.yu@intel.com \
--cc=h.peter.anvin@intel.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=peterz@infradead.org \
--cc=ravi.v.shankar@intel.com \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
--cc=vikas.shivappa@intel.com \
--cc=x86@kernel.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.