24 bench.
batch(in.size()).unit(
"byte").
run([&] {
33 bench.
batch(in.size()).unit(
"byte").
run([&] {
34 CSHA1().
Write(in.data(), in.size()).Finalize(hash);
42 bench.
batch(in.size()).unit(
"byte").
run([&] {
49 uint8_t hash[SHA3_256::OUTPUT_SIZE];
51 bench.
batch(in.size()).unit(
"byte").
run([&] {
58 std::vector<uint8_t> in(32,0);
59 bench.
batch(in.size()).unit(
"byte").
run([&] {
61 .
Write(in.data(), in.size())
68 std::vector<uint8_t> in(64 * 1024, 0);
69 bench.
batch(in.size()).unit(
"byte").
run([&] {
78 bench.
batch(in.size()).unit(
"byte").
run([&] {
CSHA256 & Write(const unsigned char *data, size_t len)
uint64_t SipHashUint256(uint64_t k0, uint64_t k1, const uint256 &val)
Optimized SipHash-2-4 implementation for uint256.
CSHA1 & Write(const unsigned char *data, size_t len)
static void SHA1(benchmark::Bench &bench)
static void SipHash_32b(benchmark::Bench &bench)
static const uint64_t BUFFER_SIZE
static void FastRandom_1bit(benchmark::Bench &bench)
Bench & run(char const *benchmarkName, Op &&op)
Repeatedly calls op() based on the configuration, and performs measurements.
static void RIPEMD160(benchmark::Bench &bench)
static const size_t OUTPUT_SIZE
static const unsigned char k1[32]
static void SHA3_256_1M(benchmark::Bench &bench)
static constexpr size_t OUTPUT_SIZE
CRIPEMD160 & Write(const unsigned char *data, size_t len)
uint32_t rand32() noexcept
Generate a random 32-bit integer.
static void SHA256D64_1024(benchmark::Bench &bench)
CSHA512 & Write(const unsigned char *data, size_t len)
static const size_t OUTPUT_SIZE
bool randbool() noexcept
Generate a random boolean.
Main entry point to nanobench's benchmarking facility.
static void SHA512(benchmark::Bench &bench)
void SHA256D64(unsigned char *out, const unsigned char *in, size_t blocks)
Compute multiple double-SHA256's of 64-byte blobs.
A hasher class for SHA-512.
static const size_t OUTPUT_SIZE
A hasher class for SHA-256.
static void SHA256_32b(benchmark::Bench &bench)
static void SHA256(benchmark::Bench &bench)
ANKERL_NANOBENCH(NODISCARD) std Bench & batch(T b) noexcept
Sets the batch size.
static void FastRandom_32bit(benchmark::Bench &bench)
A hasher class for RIPEMD-160.