This combines bench_verify
, bench_sign
, bench_ecdh
, bench_recovery
, and bench_schnorrsig
into a single bench
binary.
I don’t think there is a good reason to have this many binaries, and it complicates build config and CI.
This combines bench_verify
, bench_sign
, bench_ecdh
, bench_recovery
, and bench_schnorrsig
into a single bench
binary.
I don’t think there is a good reason to have this many binaries, and it complicates build config and CI.
I don’t think there is a good reason to have this many binaries, and it complicates build config and CI.
One possible drawback is that if you want to run a really high iteration of tests (e.g., taking a minute of sig verify), then it’s somewhat annoying if your test is late in the list. Of course you can edit the source files but it’s not great either.
bench_intern
has?
bench_internal
! So Concept ACK for that idea.
tACK af6abcb, the command-line options work as expected on my ubuntu machine. The diff looks good.
you can find my command-line output here.
These are the few things that I observed: (not sure if we need to change them)
./bench
and ./bench ecdsa
runs all benchmark. (since the have_flag("edcsa")
is present on both verify and sign benchmarks.)Maybe I’m misunderstating your observations but I can’t confirm.
1. Both `./bench` and `./bench ecdsa` runs all benchmark. (_since the `have_flag("edcsa")` is present on both verify and sign benchmarks._)
Indeed but you can also specify ./bench ecdsa_verify
or ./bench ecdsa_sign.
2. If a module is enabled (let's say schnorrsig), the benchmark of that module cannot be run separately like we do for sign and verify.
You can also specify ./bench schnorrsig_verify
or ./bench schnorrsig_sign.
You can also specify
./bench schnorrsig_verify
or./bench schnorrsig_sign.
Ohh.. I didn’t review the src/modules/schnorrsig/bench_impl.h
properly. This works. Thanks!
Indeed but you can also specify
./bench ecdsa_verify
or./bench ecdsa_sign.
Yes, I thought both the ./bench
and ./bench ecdsa
were equivalent. Now, I see that I was wrong. If we have a module enabled they act differently.
Everything looks good!
Concept ACK, played around with this a bit and it works as one would expect
A follow-up PR could add a --help
which would also mention the get_iters
environment variable (I have to look up in the source how it’s called exactly every time).