Skip to content
Commit bbdf0e2d authored by Joana Cruz's avatar Joana Cruz Committed by Pierre Blanchard
Browse files

Integrate Google benchmarks into SLEEF

Added new benchmark tool to SLEEF project using googlebench
framework.
In theory this tool can benchmark any unary and binary function
in SLEEF.
Benchmark is enabled in all functions listed in benchsleef.cpp.
This list uses macros in benchmark_callers.cpp, so that we can
enable benchmarking in multiple precisions using single lines
of code. It is also possible to list the exact function we want,
as each of the macros in benchmark_callers.cpp can be called
independently and connected like building blocks.
The tool is integrated with SLEEF via CMake, meaning it can
be built automatically when SLEEF is built. To enable that,
pass CMake argument -DSLEEF_BUILD_BENCH=ON.

This tool depends on C++17 standard.
Tested on aarch64 for scalar, vector and SVE routines
Tested on x86 for different vector length extensions.
Tested for llvm-17, gcc-11 and gcc-14.
parent 686f2ceb
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment