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