Fabcoin Core
0.16.2
P2P Digital Currency
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
src
bench
Examples.cpp
Go to the documentation of this file.
1
// Copyright (c) 2015-2017 The Bitcoin Core developers
2
// Distributed under the MIT software license, see the accompanying
3
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5
#include <
bench/bench.h
>
6
#include <validation.h>
7
#include <
utiltime.h
>
8
9
// Sanity test: this should loop ten times, and
10
// min/max/average should be close to 100ms.
11
static
void
Sleep100ms(
benchmark::State
& state)
12
{
13
while
(state.
KeepRunning
()) {
14
MilliSleep
(100);
15
}
16
}
17
18
BENCHMARK
(Sleep100ms, 10);
19
20
// Extremely fast-running benchmark:
21
#include <math.h>
22
23
volatile
double
sum
= 0.0;
// volatile, global so not optimized away
24
25
static
void
Trig(
benchmark::State
& state)
26
{
27
double
d
= 0.01;
28
while
(state.
KeepRunning
()) {
29
sum += sin(d);
30
d += 0.000001;
31
}
32
}
33
34
BENCHMARK
(Trig, 12 * 1000 * 1000);
MilliSleep
void MilliSleep(int64_t n)
Definition:
utiltime.cpp:60
utiltime.h
benchmark::State::KeepRunning
bool KeepRunning()
Definition:
bench.h:70
sum
volatile double sum
Definition:
Examples.cpp:23
bench.h
BENCHMARK
BENCHMARK(Sleep100ms, 10)
benchmark::State
Definition:
bench.h:54
d
#define d(i)
Definition:
sha.cpp:732
Generated on Mon Oct 22 2018 15:15:26 for Fabcoin Core by
1.8.11