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
 |