1resctrl_tests - resctrl file system test suit 2 3Authors: 4 Fenghua Yu <fenghua.yu@intel.com> 5 Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>, 6 7resctrl_tests tests various resctrl functionalities and interfaces including 8both software and hardware. 9 10Currently it supports Memory Bandwidth Monitoring test and Memory Bandwidth 11Allocation test on Intel RDT hardware. More tests will be added in the future. 12And the test suit can be extended to cover AMD QoS and ARM MPAM hardware 13as well. 14 15resctrl_tests can be run with or without kselftest framework. 16 17WITH KSELFTEST FRAMEWORK 18======================= 19 20BUILD 21----- 22 23Build executable file "resctrl_tests" from top level directory of the kernel source: 24 $ make -C tools/testing/selftests TARGETS=resctrl 25 26RUN 27--- 28 29Run resctrl_tests as sudo or root since the test needs to mount resctrl file 30system and change contents in the file system. 31Using kselftest framework will run all supported tests within resctrl_tests: 32 33 $ sudo make -C tools/testing/selftests TARGETS=resctrl run_tests 34 35More details about kselftest framework can be found in 36Documentation/dev-tools/kselftest.rst. 37 38WITHOUT KSELFTEST FRAMEWORK 39=========================== 40 41BUILD 42----- 43 44Build executable file "resctrl_tests" from this directory(tools/testing/selftests/resctrl/): 45 $ make 46 47RUN 48--- 49 50Run resctrl_tests as sudo or root since the test needs to mount resctrl file 51system and change contents in the file system. 52Executing the test without any parameter will run all supported tests: 53 54 $ sudo ./resctrl_tests 55 56OVERVIEW OF EXECUTION 57===================== 58 59A test case has four stages: 60 61 - setup: mount resctrl file system, create group, setup schemata, move test 62 process pids to tasks, start benchmark. 63 - execute: let benchmark run 64 - verify: get resctrl data and verify the data with another source, e.g. 65 perf event. 66 - teardown: umount resctrl and clear temporary files. 67 68ARGUMENTS 69========= 70 71Parameter '-h' shows usage information. 72 73usage: resctrl_tests [-h] [-b "benchmark_cmd [options]"] [-t test list] [-n no_of_bits] 74 -b benchmark_cmd [options]: run specified benchmark for MBM, MBA and CMT default benchmark is builtin fill_buf 75 -t test list: run tests specified in the test list, e.g. -t mbm,mba,cmt,cat 76 -n no_of_bits: run cache tests using specified no of bits in cache bit mask 77 -p cpu_no: specify CPU number to run the test. 1 is default 78 -h: help 79