Closed linh2931 closed 2 years ago
Should we consider using https://github.com/google/benchmark which has built in support for preventing the compiler from optimizing out what you are trying to benchmark as well as other useful features for micro-benchmarking.
The Google microbenchmarking library looks great. It has lots of features and more code. Just wondering if it is brought in, would it increase dependencies and build time?
We will not move forward with Google benchmarking framework at this time, because it doesn't seem to have enough value add compared to current code used.
I wonder if there should be a machine-readable output (like JSON) to make it easier to ingest in to some reporting framework.
I will add a -j option for JSON format output.
I wonder if there should be a machine-readable output (like JSON) to make it easier to ingest in to some reporting framework.
That would be nice to have, but maybe we can list that as a phase 2 item for after this is merged and done.
Close this as it is being ported over to Leap as https://github.com/AntelopeIO/leap/pull/17.
Resolve https://github.com/eosnetworkfoundation/mandel/issues/786 and partially resolve https://github.com/eosnetworkfoundation/mandel/issues/780.
Implement a benchmarking framework to help writing benchmarking code by reusing common measuring functions and unifying reports. After the PR is approved, the framework can be used to benchmark other functions.
For end users
Below are a few examples
Help
Benchmarking All Modules (functions)
Benchmarking Particular Module with Specific Number of Runs
For developers
Please see
alt_bn_128.cpp
andmodexp.cpp
for examples.The general approach to adding code to benchmark a set of functions is
benchmarking
.modules
inbenchmark.cpp
.