| resctrl_tests - resctrl file system test suit |
| |
| Authors: |
| Fenghua Yu <fenghua.yu@intel.com> |
| Sai Praneeth Prakhya <sai.praneeth.prakhya@intel.com>, |
| |
| resctrl_tests tests various resctrl functionalities and interfaces including |
| both software and hardware. |
| |
| Currently it supports Memory Bandwidth Monitoring test and Memory Bandwidth |
| Allocation test on Intel RDT hardware. More tests will be added in the future. |
| And the test suit can be extended to cover AMD QoS and ARM MPAM hardware |
| as well. |
| |
| resctrl_tests can be run with or without kselftest framework. |
| |
| WITH KSELFTEST FRAMEWORK |
| ======================= |
| |
| BUILD |
| ----- |
| |
| Build executable file "resctrl_tests" from top level directory of the kernel source: |
| $ make -C tools/testing/selftests TARGETS=resctrl |
| |
| RUN |
| --- |
| |
| Run resctrl_tests as sudo or root since the test needs to mount resctrl file |
| system and change contents in the file system. |
| Using kselftest framework will run all supported tests within resctrl_tests: |
| |
| $ sudo make -C tools/testing/selftests TARGETS=resctrl run_tests |
| |
| More details about kselftest framework can be found in |
| Documentation/dev-tools/kselftest.rst. |
| |
| WITHOUT KSELFTEST FRAMEWORK |
| =========================== |
| |
| BUILD |
| ----- |
| |
| Build executable file "resctrl_tests" from this directory(tools/testing/selftests/resctrl/): |
| $ make |
| |
| RUN |
| --- |
| |
| Run resctrl_tests as sudo or root since the test needs to mount resctrl file |
| system and change contents in the file system. |
| Executing the test without any parameter will run all supported tests: |
| |
| $ sudo ./resctrl_tests |
| |
| OVERVIEW OF EXECUTION |
| ===================== |
| |
| A test case has four stages: |
| |
| - setup: mount resctrl file system, create group, setup schemata, move test |
| process pids to tasks, start benchmark. |
| - execute: let benchmark run |
| - verify: get resctrl data and verify the data with another source, e.g. |
| perf event. |
| - teardown: umount resctrl and clear temporary files. |
| |
| ARGUMENTS |
| ========= |
| |
| Parameter '-h' shows usage information. |
| |
| usage: resctrl_tests [-h] [-b "benchmark_cmd [options]"] [-t test list] [-n no_of_bits] |
| -b benchmark_cmd [options]: run specified benchmark for MBM, MBA and CMT default benchmark is builtin fill_buf |
| -t test list: run tests specified in the test list, e.g. -t mbm,mba,cmt,cat |
| -n no_of_bits: run cache tests using specified no of bits in cache bit mask |
| -p cpu_no: specify CPU number to run the test. 1 is default |
| -h: help |