Skip to content

Commit e7e25ea

Browse files
committed
Merge #8110: [Doc] Add benchmarking notes
1a8c4d5 [Doc] Add benchmarking notes (fanquake)
2 parents 0026e0e + 1a8c4d5 commit e7e25ea

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

doc/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ The Bitcoin repo's [root README](/README.md) contains relevant information on th
5757
- [Shared Libraries](shared-libraries.md)
5858
- [BIPS](bips.md)
5959
- [Dnsseed Policy](dnsseed-policy.md)
60+
- [Benchmarking](benchmarking.md)
6061

6162
### Resources
6263
* Discuss on the [BitcoinTalk](https://bitcointalk.org/) forums, in the [Development & Technical Discussion board](https://bitcointalk.org/index.php?board=6.0).

doc/benchmarking.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
Benchmarking
2+
============
3+
4+
Bitcoin Core has an internal benchmarking framework, with benchmarks
5+
for cryptographic algorithms such as SHA1, SHA256, SHA512 and RIPEMD160. As well as the rolling bloom filter.
6+
7+
After compiling bitcoin-core, the benchmarks can be run with:
8+
`src/bench/bench_bitcoin`
9+
10+
The output will look similar to:
11+
```
12+
#Benchmark,count,min,max,average
13+
RIPEMD160,448,0.001245033173334,0.002638196945190,0.002461894814457
14+
RollingBloom-refresh,1,0.000635000000000,0.000635000000000,0.000635000000000
15+
RollingBloom-refresh,1,0.000108000000000,0.000108000000000,0.000108000000000
16+
RollingBloom-refresh,1,0.000107000000000,0.000107000000000,0.000107000000000
17+
RollingBloom-refresh,1,0.000204000000000,0.000204000000000,0.000204000000000
18+
SHA1,640,0.000909024336207,0.001938136418660,0.001843086257577
19+
SHA256,256,0.002209486499909,0.008500099182129,0.004300644621253
20+
SHA512,384,0.001319904176016,0.002813005447388,0.002615700786312
21+
Sleep100ms,10,0.205592155456543,0.210056066513062,0.104166316986084
22+
Trig,67108864,0.000000014997003,0.000000015448112,0.000000015188842
23+
```
24+
25+
More benchmarks are needed for, in no particular order:
26+
- Script Validation
27+
- CCoinDBView caching
28+
- Coins database
29+
- Memory pool
30+
- Wallet coin selection

0 commit comments

Comments
 (0)