Dash Core  0.12.2.1
P2P Digital Currency
Examples.cpp
Go to the documentation of this file.
1 // Copyright (c) 2015 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.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 
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 
static void Trig(benchmark::State &state)
Definition: Examples.cpp:25
void MilliSleep(int64_t n)
Definition: utiltime.cpp:63
bool KeepRunning()
Definition: bench.cpp:39
volatile double sum
Definition: Examples.cpp:23
static void Sleep100ms(benchmark::State &state)
Definition: Examples.cpp:11
BENCHMARK(Sleep100ms)