33 PrevectorJob() =
default;
41 void swap(PrevectorJob& x) noexcept
53 std::vector<std::vector<PrevectorJob>> vBatches(
BATCHES);
54 for (
auto& vChecks : vBatches) {
57 vChecks.emplace_back(insecure_rand);
63 for (
auto vChecks : vBatches) {
70 queue.StopWorkerThreads();
static void CCheckQueueSpeedPrevectorJob(benchmark::Bench &bench)
void resize(size_type new_size)
void Add(std::vector< T > &vChecks)
static const size_t BATCH_SIZE
void swap(prevector< N, T, Size, Diff > &other) noexcept
RAII-style controller object for a CCheckQueue that guarantees the passed queue is finished before co...
static const size_t BATCHES
ANKERL_NANOBENCH(NODISCARD) std Bench & minEpochIterations(uint64_t numIters) noexcept
Sets the minimum number of iterations each epoch should take.
Users of this module must hold an ECCVerifyHandle.
Bench & run(char const *benchmarkName, Op &&op)
Repeatedly calls op() based on the configuration, and performs measurements.
BENCHMARK(CCheckQueueSpeedPrevectorJob)
int GetNumCores()
Return the number of cores available on the current system.
Queue for verifications that have to be performed.
Implements a drop-in replacement for std::vector<T> which stores up to N elements directly (without h...
Bench & unit(char const *unit)
Sets the operation unit.
static const unsigned int QUEUE_BATCH_SIZE
Main entry point to nanobench's benchmarking facility.
uint64_t randrange(uint64_t range) noexcept
Generate a random integer in the range [0..range).
ANKERL_NANOBENCH(NODISCARD) std Bench & batch(T b) noexcept
Sets the batch size.
static const int PREVECTOR_SIZE