diff options
Diffstat (limited to 'benchtests/README')
-rw-r--r-- | benchtests/README | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/benchtests/README b/benchtests/README index 999d268cf8..4ddff794d1 100644 --- a/benchtests/README +++ b/benchtests/README @@ -34,6 +34,44 @@ the benchmark to use clock_gettime by invoking make as follows: Again, one must run `make bench-clean' before changing the measurement method. +Running benchmarks on another target: +==================================== + +If the target where you want to run benchmarks is not capable of building the +code or you're cross-building, you could build and execute the benchmark in +separate steps. On the build system run: + + $ make bench-build + +and then copy the source and build directories to the target and run the +benchmarks from the build directory as usual: + + $ make bench + +make sure the copy preserves timestamps by using either rsync or scp -p +otherwise the above command may try to build the benchmark again. Benchmarks +that require generated code to be executed during the build are skipped when +cross-building. + +Running subsets of benchmarks: +============================== + +To run only a subset of benchmarks, one may invoke make as follows + + $ make bench BENCHSET="bench-pthread bench-math malloc-thread" + +where BENCHSET may be a space-separated list of the following values: + + bench-math + bench-pthread + bench-string + string-benchset + wcsmbs-benchset + stdlib-benchset + stdio-common-benchset + math-benchset + malloc-thread + Adding a function to benchtests: =============================== @@ -83,6 +121,12 @@ the same file by using the `name' directive that looks something like this: See the pow-inputs file for an example of what such a partitioned input file would look like. +It is also possible to measure throughput of a (partial) trace extracted from +a real workload. In this case the whole trace is iterated over multiple times +rather than repeating every input multiple times. This can be done via: + + ##name: workload-<name> + Benchmark Sets: ============== @@ -97,3 +141,14 @@ To add a benchset for `foo': - Write your bench-foo.c that prints out the measurements to stdout. - On execution, a bench-foo.out is created in $(objpfx) with the contents of stdout. + +Reading String Benchmark Results: +================================ + +Some of the string benchmark results are now in JSON to make it easier to read +in scripts. Use the benchtests/compare_strings.py script to show the results +in a tabular format, generate graphs and more. Run + + benchtests/scripts/compare_strings.py -h + +for usage information. |