mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-21 10:05:00 +08:00
42e2f21451
resctrl_tests can be built or run using kselftests framework. Add description on how to do so in README. Reviewed-by: Reinette Chatre <reinette.chatre@intel.com> Reviewed-by: Fenghua Yu <fenghua.yu@intel.com> Signed-off-by: Shaopeng Tan <tan.shaopeng@jp.fujitsu.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
79 lines
2.4 KiB
Plaintext
79 lines
2.4 KiB
Plaintext
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
|