diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 0cbe7b9..9a4f54c 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,3 +1,4 @@ +We have benchmarks, please consider running them: see our README for details. Our CI tests check formatting automating. If such a test fails, please consider running the bash script: diff --git a/README.md b/README.md index 22d1cc8..39c7e10 100644 --- a/README.md +++ b/README.md @@ -428,8 +428,7 @@ abseil : 430.45 MB/s (+/- 2.2 %) 20.52 Mfl fastfloat : 1042.38 MB/s (+/- 9.9 %) 49.68 Mfloat/s ``` -See for our benchmarking -code. +See the [Benchmarking](#benchmarking) Section for instructions on how to run our benchmarks. ## Video @@ -485,6 +484,29 @@ You may directly download automatically generated single-header files: +## Benchmarking + +The project has its own benchmarks with realistic data inputs. Under Linux or macOS, +you can use it as follows if your system supports C++17: + +``` +cmake -B build -D FASTFLOAT_BENCHMARKS=ON +cmake --build build +./build/benchmarks/realbenchmark +``` + +Importantly, by default, the benchmark is built in Release mode. + +The instructions are similar under Windows. + +Under Linux and macOS, it is recommended to run the benchmarks in a privileged manner to get access +to hardware performance counters. You may be able to do so with the `sudo` command +in some cases: + +``` +sudo ./build/benchmarks/realbenchmark +``` + ## Packages * The fast_float library is part of the [Conan package