Skip to content

Commit d68eb06

Browse files
authored
Merge pull request #163 from intel/docbench
add benchmark descriptions to README
2 parents 4ed1a04 + c174a01 commit d68eb06

File tree

1 file changed

+23
-4
lines changed

1 file changed

+23
-4
lines changed

README.md

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ If sudo is not possible and running as the root user is not possible, use the `-
8484
See `perfspect metrics -h` for the extensive set of options and examples.
8585

8686
#### Report Command
87-
The `report` command generates system configuration reports in a variety of formats. By default, all categories of information are collected:
87+
The `report` command generates system configuration reports in a variety of formats. By default, all categories of information are collected. See `perfspect report -h` for all options.
8888
```
8989
$ ./perfspect report
9090
soc-PF4W5A3V ⢿ collection complete
@@ -114,10 +114,29 @@ Microcode: 0x21000230
114114
Report files:
115115
/home/myuser/dev/perfspect/perfspect_2024-09-03_17-47-55/emr.txt
116116
```
117-
See `perfspect report -h` for all options.
117+
###### Benchmarks
118+
To assist in evaluating the health of target systems, the report command can run a series of micro-benchmarks. The results will be reported along with the target's configuration details. Use --benchmarks \<"all" or comma separated list of benchmarks\>:
119+
```
120+
$ ./perfspect report --benchmarks all
121+
soc-PF4W5A3V ⢿ collection complete
122+
123+
Report files:
124+
/home/myuser/dev/perfspect/perfspect_2024-09-03_17-45-40/soc-PF4W5A3V.html
125+
/home/myuser/dev/perfspect/perfspect_2024-09-03_17-45-40/soc-PF4W5A3V.xlsx
126+
/home/myuser/dev/perfspect/perfspect_2024-09-03_17-45-40/soc-PF4W5A3V.json
127+
/home/myuser/dev/perfspect/perfspect_2024-09-03_17-45-40/soc-PF4W5A3V.txt
128+
```
118129

119-
###### Memory Benchmark Requirements
120-
Memory benchmarks executed through the PerfSpect report command require the Intel® Memory Latency Checker application. It can be downloaded from here: [MLC](https://www.intel.com/content/www/us/en/download/736633/intel-memory-latency-checker-intel-mlc.html). Once downloaded, extract the Linux executable and place it in the perfspect/tools/x86_64 directory.
130+
| benchmark | Description |
131+
| --------- | ----------- |
132+
| all | runs all benchmarks |
133+
| speed | runs each [stress-ng](https://github.com/ColinIanKing/stress-ng) cpu-method for 1s each, reports the geo-metric mean of all results. |
134+
| power | runs stress-ng in two stages: 1) load 1 cpu to 100% for 20s to measure maximum frequency, 2) load all cpus to 100% for 60s. Uses [turbostat](https://github.com/torvalds/linux/tree/master/tools/power/x86/turbostat) to measure power. |
135+
| temperature | runs the same micro benchmark as 'power', but extracts maximum temperature from turbostat output. |
136+
| frequency | runs [avx-turbo](https://github.com/intel/avx-turbo) to measure scalar and AVX frequencies across processor's cores. **Note:** Runtime increases with core count. |
137+
| memory | runs [Intel(r) Memory Latency Checker](https://www.intel.com/content/www/us/en/download/736633/intel-memory-latency-checker-intel-mlc.html) (MLC) to measure memory bandwidth and latency across a load range. **Important Note:** MLC is not included with PerfSpect. It can be downloaded from here: [MLC](https://www.intel.com/content/www/us/en/download/736633/intel-memory-latency-checker-intel-mlc.html). Once downloaded, extract the Linux executable and place it in the perfspect/tools/x86_64 directory. |
138+
| numa | runs Intel(r) Memory Latency Checker(MLC) to measure bandwidth between NUMA nodes. See Note above about downloading MLC. |
139+
| storage | runs [fio](https://github.com/axboe/fio) for 2m in read/write mode with a single worker to measure single-thread read and write bandwidth. Use the --storage-dir flag to override the default location. Minimum 5GB disk space required to run test. |
121140

122141
#### Telemetry Command
123142
The `telemetry` command runs telemetry collectors on the specified target(s) and then generates reports of the results. By default, all telemetry types are collected. To select telemetry types, additional command line options are available (see `perfspect telemetry -h`).

0 commit comments

Comments
 (0)