intel / intel-cmt-cat

User space software for Intel(R) Resource Director Technology
http://www.intel.com/content/www/us/en/architecture-and-technology/resource-director-technology.html
Other
693 stars 183 forks source link

L3CDP seems not supported with my system? #210

Closed DeruiLiu closed 2 years ago

DeruiLiu commented 2 years ago

Hello, i use latest CPU (Intel(R) Xeon(R) Platinum 8331C CPU @ 2.50GHz), and rdt_a can be find in my cpu flag. My kernel version is 4.19。When I use pqos to turn on l3cdp, it is failed, can you tell me how to enable it?

But is is success in my old cpu (Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz) with rdt flag.

The error can be find as below:

sudo LD_LIBRARY_PATH=/home/admin/ldr/tools/intel-cmt-cat-4.0.0/lib /home/admin/ldr/tools/intel-cmt-cat-4.0.0/pqos/pqos -R l3cdp-on
NOTE:  Mixed use of MSR and kernel interfaces to manage
       CAT or CMT & MBM may lead to unexpected behavior.
WARN: resctl filesystem mounted! Using MSR interface may corrupt resctrl filesystem and cause unexpected behaviour
ERROR: L3 CAT/CDP requested but not supported by the platform!
Allocation reset failed!

In addition I added kernel command line parameters at boot like this:

$cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-4.19.91-008.ali4000.alios7.x86_64 root=LABEL=/ ro console=ttyS0,115200 LANG=en_US.UTF-8 fsck.repair=yes virtio_ring.vring_force_dma_api=1 cpuidle.governor=haltpoll rdt=cmt,mbmtotal,mbmlocal,l3cat,l3cdp,mba cpuidle_sysfs_switch=1 mitigations=off nokaslr crashkernel=0M-2G:0M,2G-256G:256M,256G-1024G:320M,1024G-:384M

I checked kernel config it seems that it is not the problem. The config option was already set:

CONFIG_INTEL_RDT_A=y
CONFIG_INTEL_RDT=y

and i find i can handle the L3 resource:

$ls /sys/fs/resctrl/info/
L3  L3_MON  last_cmd_status  MB
DeruiLiu commented 2 years ago

I also find there is no cdp flag in my old cpu, my old cpu which can be enable l3cdp, it's flag is as below:

Model name:            Intel(R) Xeon(R) Platinum 8163 CPU @ 2.50GHz
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch ida arat epb pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm mpx rdt avx512f avx512dq rdseed adx smap clflushopt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local cat_l3

my new cpu flag is as below, whic is not supported l3cdp:

Model name:            Intel(R) Xeon(R) Platinum 8331C CPU @ 2.50GHz
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 invpcid_single ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid cqm rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local wbnoinvd dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq rdpid md_clear pconfig flush_l1d arch_capabilities
aleksinx commented 2 years ago

In pqos 4.0.0 version MSR interface is used by default. MSR interface don't access resctrl filesystem and uses CPU registers directly

Could you provide output of the following commands

pqos -D -V
pqos -I -D -V
aleksinx commented 2 years ago

No response for few weeks. Going to close this issue by now.

Feel free to reopen, if issue persists.

Thanks, Michał