From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: Re: [PATCH v4 0/5] enable Memory Bandwidth Monitoring (MBM) for VMs Date: Tue, 20 Jan 2015 13:49:10 +0000 Message-ID: <54BE5CD6.3020805@citrix.com> References: <1421747157-29191-1-git-send-email-chao.p.peng@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1421747157-29191-1-git-send-email-chao.p.peng@linux.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Chao Peng , xen-devel@lists.xen.org Cc: wei.liu2@citrix.com, Ian.Campbell@citrix.com, stefano.stabellini@eu.citrix.com, Ian.Jackson@eu.citrix.com, will.auld@intel.com, JBeulich@suse.com, keir@xen.org List-Id: xen-devel@lists.xenproject.org On 20/01/15 09:45, Chao Peng wrote: > Changes from v3: > * Get timestamp information from host along with the monitoring counter; > This is required for counter overlow detection. > * Address comments from Wei on the last patch. > > Changes from v2: > * Remove the usage of "static" to cache data in xc; > NOTE: Other places that already existed before are not touched due to > the needs for API change. Will fix in separate patch if desirable. > * Coding style; > > Changes from v1: > * Move event type check from xc to xl; > * Add retry capability for MBM sampling; > * Fix Coding style/docs; > > Intel Memory Bandwidth Monitoring(MBM) is a new hardware feature > which builds on the CMT infrastructure to allow monitoring of system > memory bandwidth. Event codes are provided to monitor both "total" > and "local" bandwidth, meaning bandwidth over QPI and other external > links can be monitored. > > For XEN, MBM is used to monitor memory bandwidth for VMs. Due to its > dependency on CMT, the software also makes use of most of CMT codes. > Actually, besides introducing two additional events and some cpuid > feature bits, there are no extra changes compared to cache occupancy > monitoring in CMT. Due to this, CMT should be enabled first to use > this feature. > > For interface changes, the patch serial introduces a new command > "XEN_SYSCTL_PSR_CMT_get_l3_event_mask" which exposes MBM feature > capability to user space and modified "resource_op" to support reading > host timestamp. > Tool stack side, two additional options introduced for "xl psr-cmt-show": > total_mem_bandwidth: Show total memory bandwidth > local_mem_bandwidth: Show local memory bandwidth > > The usage flow keeps the same with CMT. Please, somewhere in this series (even if it is a solitary extra patch), patch the command line documentation to add MBM next to the sentence about CMT. ~Andrew > > Chao Peng (5): > x86: allow reading MSR_IA32_TSC with XENPF_resource_op > tools: add routine to get CMT L3 event mask > tools: correct coding style for psr > tools: code refactoring for MBM > tools: add total/local memory bandwith monitoring > > docs/man/xl.pod.1 | 9 +++ > tools/libxc/include/xenctrl.h | 14 ++-- > tools/libxc/xc_msr_x86.h | 1 + > tools/libxc/xc_psr.c | 59 ++++++++++++--- > tools/libxl/libxl.h | 22 +++++- > tools/libxl/libxl_psr.c | 155 ++++++++++++++++++++++++++++++++++---- > tools/libxl/libxl_types.idl | 2 + > tools/libxl/xl_cmdimpl.c | 78 +++++++++++++------ > tools/libxl/xl_cmdtable.c | 4 +- > xen/arch/x86/platform_hypercall.c | 8 +- > 10 files changed, 295 insertions(+), 57 deletions(-) >