Files
TheBandwidthBenchmark/util/README.md
2020-12-10 07:31:47 +01:00

1.1 KiB

Single file teaching version

bwBench.c contains a single file version of The Bandwidth Benchmark that is tailored for usage in Tutorials or Courses.

It should compile with any C99 compiler.

Benchmarking skripts

bench.pl to determine the absolute highest main memory bandwidth

A wrapper scripts in perl (bench.pl) and python (bench.py) are also provided to scan ranges of thread counts and determine the absolute highest sustained main memory bandwidth. In order to use it likwid-pin has to be in your path. The script has three required and one optional command line arguments:

$./bench.pl <executable> <thread count range>  <repetitions> [<SMT setting>]

Example usage:

$./bench.pl ./bwbench-GCC 2-8 6

The script will always use physical cores only, where two SMT threads is the default. For different SMT thread counts use the 4th command line argument. Example for a processor without SMT:

$./bench.pl ./bwbench-GCC 14-24  10  1

extractResults.pl to generate a plottable output files from multiple scaling runs

Please see how to use it in the toplevel README.