Some Intel processor families (e.g. the Intel Xeon processor E5 v3
family) introduced some PQos (Platform Qos) features, including CMT
(Cache Monitoring technology) and MBM (Memory Bandwidth Monitoring),
to monitor or control shared resource. This patch add them into x86
part of cpu_map.xml to be used for applications based on libvirt to
get cpu capabilities. For example, Nova in OpenStack schedules guests
based on the CPU features that the host has.
Signed-off-by: Qiaowei Ren <qiaowei.ren(a)intel.com>
---
src/cpu/cpu_map.xml | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/cpu/cpu_map.xml b/src/cpu/cpu_map.xml
index bf2dfc6..6da8321 100644
--- a/src/cpu/cpu_map.xml
+++ b/src/cpu/cpu_map.xml
@@ -224,6 +224,9 @@
<feature name='rtm'>
<cpuid eax_in='0x07' ebx='0x00000800'/>
</feature>
+ <feature name='cmt'>
+ <cpuid eax_in='0x07' ebx='0x00001000'/>
+ </feature>
<feature name='mpx'>
<cpuid eax_in='0x07' ebx='0x00004000'/>
</feature>
@@ -266,6 +269,14 @@
<cpuid eax_in='0x0d' ecx_in='0x01'
eax='0x00000008'/>
</feature>
+ <!-- cpuid level 0x0000000f:1 (edx) -->
+ <feature name='mbm_total'> <!-- LLC Total MBM monitoring -->
+ <cpuid eax_in='0x0f' ecx_in='0x01'
edx='0x00000002'/>
+ </feature>
+ <feature name='mbm_local'> <!-- LLC Local MBM monitoring -->
+ <cpuid eax_in='0x0f' ecx_in='0x01'
edx='0x00000004'/>
+ </feature>
+
<!-- extended features, EDX -->
<feature name='syscall'> <!-- CPUID_EXT2_SYSCALL -->
<cpuid eax_in='0x80000001' edx='0x00000800'/>
--
1.9.1