There are benchmark tests for all relevant API functions, located in the
The benchmark application is similar to that of the tuning system, but measures the throughput of the RAPP API functions instead of the Compute layer functions. The build system runs all the benchmark tests and creates the output HTML plot, in a similar way to how the tuned configurations are built, but without the re-entrancy. The following steps are carried out at the end of e.g.
benchmark/benchmarkplot.htmlexists. If so, we are done.
rappbenchmark.runon the target platform. Otherwise it will be executed automatically. When finished, it has produced data file benchmarkdata.py.
After benchmarking, the generated plot file is located in the
benchmark directory in the build tree. To make RAPP benchmarked on the platform for everyone else, it must be copied to the source directory and/or added to the distribution. A tarball to send to the maintainers, containing the necessary files, can be created using the make-target
export-new-archfiles. There's also the make-target
update-benchmarks (or together with the tune-file using
update-archfiles) to put the generated files in the local source directory with the correct name.