From: Chao Peng <chao.p.peng@linux.intel.com>
To: He Chen <he.chen@linux.intel.com>
Cc: wei.liu2@citrix.com, ian.campbell@citrix.com,
stefano.stabellini@eu.citrix.com, andrew.cooper3@citrix.com,
ian.jackson@eu.citrix.com, jbeulich@suse.com,
xen-devel@lists.xenproject.org, keir@xen.org
Subject: Re: [PATCH v3 4/4] docs: add document to introduce CDP command
Date: Mon, 14 Sep 2015 17:35:32 +0800 [thread overview]
Message-ID: <20150914093532.GD4475@pengc-linux.bj.intel.com> (raw)
In-Reply-To: <1442201227-8610-5-git-send-email-he.chen@linux.intel.com>
On Mon, Sep 14, 2015 at 11:27:07AM +0800, He Chen wrote:
> Add new CDP option with CAT commands in xl interface man page.
^s to
> Add description of CDP in xl-psr.markdown.
>
> Signed-off-by: He Chen <he.chen@linux.intel.com>
> ---
> docs/man/xl.pod.1 | 14 ++++++++++++++
> docs/misc/xl-psr.markdown | 42 +++++++++++++++++++++++++++++++++++++-----
> 2 files changed, 51 insertions(+), 5 deletions(-)
>
> diff --git a/docs/man/xl.pod.1 b/docs/man/xl.pod.1
> index f22c3f3..3801039 100644
> --- a/docs/man/xl.pod.1
> +++ b/docs/man/xl.pod.1
> @@ -1530,6 +1530,12 @@ applications. In the Xen implementation, CAT is used to control cache allocation
> on VM basis. To enforce cache on a specific domain, just set capacity bitmasks
> (CBM) for the domain.
>
> +Intel Broadwell and later server platforms also offer Code/Data Prioritization
> +(CDP) for cache allocation, which support specify code or data cache for
^ing
> +applications. CDP is used on VM basis in the Xen implementation. To specify
> +code or data CBM for the domain, CDP feature must be enabled and CBM type
> +options need to be specified when setting CBM.
> +
> =over 4
>
> =item B<psr-cat-cbm-set> [I<OPTIONS>] I<domain-id> I<cbm>
> @@ -1545,6 +1551,14 @@ B<OPTIONS>
>
> Specify the socket to process, otherwise all sockets are processed.
>
> +=item B<-c>, B<--code>
> +
> +Set code CBM with CDP enabled.
^when CDP is enabled.
> +
> +=item B<-d>, B<--data>
> +
> +Set data CBM with CDP enabled.
Ditto.
> +
> =back
>
> =item B<psr-cat-show> [I<domain-id>]
> diff --git a/docs/misc/xl-psr.markdown b/docs/misc/xl-psr.markdown
> index 3545912..538ea60 100644
> --- a/docs/misc/xl-psr.markdown
> +++ b/docs/misc/xl-psr.markdown
> @@ -14,7 +14,7 @@ tracks cache utilization of memory accesses according to the RMID and reports
> monitored data via a counter register.
>
> For more detailed information please refer to Intel SDM chapter
> -"17.14 - Platform Shared Resource Monitoring: Cache Monitoring Technology".
> +"17.15 - Platform Shared Resource Monitoring: Cache Monitoring Technology".
>
> In Xen's implementation, each domain in the system can be assigned a RMID
> independently, while RMID=0 is reserved for monitoring domains that don't
> @@ -91,17 +91,42 @@ For example, assuming a system with 8 portions and 3 domains:
> first domain exclusive access to half the cache, and the other two exclusive
> access to one quarter each.
>
> -For more detailed information please refer to Intel SDM chapter
> -"17.15 - Platform Shared Resource Control: Cache Allocation Technology".
> -
> In Xen's implementation, CBM can be configured with libxl/xl interfaces but
> COS is maintained in hypervisor only. The cache partition granularity is per
> domain, each domain has COS=0 assigned by default, the corresponding CBM is
> all-ones, which means all the cache resource can be used by default.
>
> +Code/Data Prioritization (CDP) Technology is an extension of CAT, which is
> +available on Intel Broadwell and later server platforms. CDP enables isolation
> +and separate prioritization of code and data fetches to the L3 cache in a
> +software configurable manner, which can enable workload prioritization and
> +tuning of cache capacity to the characteristics of the workload. CDP extends
> +Cache Allocation Technology (CAT) by providing separate code and data masks
> +per Class of Service (COS).
> +
> +CDP is disabled on the processor by default. If the CAT MSRs are used without
> +enabling CDP, the processor operates in a traditional CAT-only mode.
The last sentence can be ommited I think. You can however add such
sentence:
It can be enabled by adding 'cdp=1' to Xen bootline.
> +
> +When CDP is enabled,
> +
> + * the CAT mask MSRs are re-mapped into interleaved pairs of mask MSRs for
> + data or code fetches.
> +
> + * the range of COS for CAT is re-indexed, with the lower-half of the COS
> + range available for CDP.
> +
> +CDP allows OS or Hypervisor to partition cache allocation more fine-grained,
> +code cache and data cache can be specified respectively. With CDP enabled,
> +one COS corresponds to two CBMs (code CBM & data CBM), which means the number
> +of available COS will reduce to half when CDP is on.
This paragraph can be improved somehow.
> +
> +For more detailed information please refer to Intel SDM chapter
> +"17.16 - Platform Shared Resource Control: Cache Allocation Technology".
> +
> ### xl interfaces
>
> -System CAT information such as maximum COS and CBM length can be obtained by:
> +System CAT information such as maximum COS, CBM length and CDP status can be
> +obtained by:
>
> `xl psr-hwinfo --cat`
>
> @@ -119,6 +144,13 @@ A cbm is valid only when:
> In a multi-socket system, the same cbm will be set on each socket by default.
> Per socket cbm can be specified with the `--socket SOCKET` option.
>
> +To specify code CBM for the domain, `-c` or `--code` option is needed.
> +
> +To specify data CBM for the domain, `-d` or `--data` option is needed.
> +
> +If neither `-c` nor `-d` option is specified when CDP is on, the same code CBM
> +and data CBM will be set for the domain.
> +
I guess you can move these staff to the end of description for valid cbm,
right before "In a multi-socket system". And indicate they are OPTIONS.
Chao
next prev parent reply other threads:[~2015-09-14 9:39 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-14 3:27 [PATCH v3 0/4] Intel Code and Data Prioritization (CDP) feature enabling He Chen
2015-09-14 3:27 ` [PATCH v3 1/4] x86: Support enable CDP by boot parameter and add get CDP status He Chen
2015-09-14 8:39 ` Chao Peng
2015-09-14 14:12 ` Jan Beulich
2015-09-14 3:27 ` [PATCH v3 2/4] x86: add domctl cmd to set/get CDP code/data CBM He Chen
2015-09-14 9:04 ` Chao Peng
2015-09-14 14:28 ` Jan Beulich
2015-09-14 3:27 ` [PATCH v3 3/4] tools: add tools support for Intel CDP He Chen
2015-09-14 9:11 ` Chao Peng
2015-09-14 3:27 ` [PATCH v3 4/4] docs: add document to introduce CDP command He Chen
2015-09-14 9:35 ` Chao Peng [this message]
2015-09-14 9:48 ` [PATCH v3 0/4] Intel Code and Data Prioritization (CDP) feature enabling Chao Peng
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=20150914093532.GD4475@pengc-linux.bj.intel.com \
--to=chao.p.peng@linux.intel.com \
--cc=andrew.cooper3@citrix.com \
--cc=he.chen@linux.intel.com \
--cc=ian.campbell@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=jbeulich@suse.com \
--cc=keir@xen.org \
--cc=stefano.stabellini@eu.citrix.com \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xenproject.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).