gnss-sdr/src/tests/benchmarks
Carles Fernandez f9911cbc3f
Fix lintian warning very-long-line-length-in-source-file (raised by Lintian v2.110.0)
Rationale:
The source file includes a line length that is well beyond the normally human made code line length.
This very long line length does not allow Lintian to do correctly some source file checks.
This line could also be the result of some text injected by a computer program, and thus could lead to FTBFS bugs.
Last but not least, long line in source code could be used to obfuscate the source code and to hide stuff like backdoors or security problems.
2021-10-29 14:26:55 +02:00
..
CMakeLists.txt Fix lintian warning very-long-line-length-in-source-file (raised by Lintian v2.110.0) 2021-10-29 14:26:55 +02:00
README.md Add benchmarks of small code snippets 2020-06-21 21:10:22 +02:00
benchmark_copy.cc Apply more concise file header format 2020-12-30 13:35:06 +01:00
benchmark_detector.cc Apply more concise file header format 2020-12-30 13:35:06 +01:00
benchmark_preamble.cc Apply more concise file header format 2020-12-30 13:35:06 +01:00
benchmark_reed_solomon.cc Fix lintian warning very-long-line-length-in-source-file (raised by Lintian v2.110.0) 2021-10-29 14:26:55 +02:00

README.md

Benchmarks

This is a collection of implementation benchmarks based on Benchmark. It is useful to developers for assessing which is the fastest implementation of a given snippet of code in their machine, and to keep a track about them over different machines and compilers. The results may vary over different system architectures, compiler versions, building modes, C++ standard version used by the compiler, etc.

If Benchmark is not found in your system, CMake will download, build and statically link against that library for you at building time.

This collection is only built if the option ENABLE_BENCHMARKS is enabled when configuring gnss-sdr project's building:

$ cmake -DENABLE_BENCHMARKS=ON ..

Basic usage

Just execute the binaries generated in your install folder.

Example:

$ cd ../install
$ ./benchmark_copy

Output formats

The benchmarks support multiple output formats. Use the --benchmark_format=<console|json|csv> flag (or set the BENCHMARK_FORMAT=<console|json|csv> environment variable) to set the format type. console is the default format.

Write benchmark results to a file with the --benchmark_out=<filename> option.

Example:

$ ./benchmark_copy --benchmark_format=json --benchmark_out=benchmark_copy.json

Statistics

The number of runs of each benchmark is specified globally by the --benchmark_repetitions flag. When a benchmark is run more than once the mean, median and standard deviation of the runs will be reported.

Example:

$ ./benchmark_copy --benchmark_repetitions=10