Changeset View
Changeset View
Standalone View
Standalone View
doc/benchmarking.md
Benchmarking | Benchmarking | ||||
============ | ============ | ||||
Bitcoin ABC has an internal benchmarking framework, with benchmarks | Bitcoin ABC has an internal benchmarking framework, with benchmarks | ||||
for cryptographic algorithms (e.g. SHA1, SHA256, SHA512, RIPEMD160), | for cryptographic algorithms (e.g. SHA1, SHA256, SHA512, RIPEMD160), | ||||
as well as the rolling bloom filter, address encoding and decoding, | as well as the rolling bloom filter, address encoding and decoding, | ||||
CCoinsCaching, memory pool eviction, and wallet coin selection. | CCoinsCaching, memory pool eviction, and wallet coin selection. | ||||
Running | Running | ||||
--------------------- | --------------------- | ||||
The benchmarks can be run with: | The benchmarks can be run with: | ||||
ninja bench-bitcoin | ninja ecash-bench | ||||
The output will look similar to: | The output will look similar to: | ||||
``` | ``` | ||||
| ns/byte | byte/s | error % | benchmark | | ns/byte | byte/s | error % | benchmark | ||||
|--------------------:|--------------------:|--------:|:---------------------------------------------- | |--------------------:|--------------------:|--------:|:---------------------------------------------- | ||||
| 64.13 | 15,592,356.01 | 0.1% | `Base58CheckEncode` | | 64.13 | 15,592,356.01 | 0.1% | `Base58CheckEncode` | ||||
| 24.56 | 40,722,672.68 | 0.2% | `Base58Decode` | | 24.56 | 40,722,672.68 | 0.2% | `Base58Decode` | ||||
``` | ``` | ||||
Help | Help | ||||
--------------------- | --------------------- | ||||
`-?` will print a list of options and exit: | `-?` will print a list of options and exit: | ||||
src/bench/bitcoin-bench -? | src/bench/ecash-bench -? | ||||
Notes | Notes | ||||
--------------------- | --------------------- | ||||
More benchmarks are needed for, in no particular order: | More benchmarks are needed for, in no particular order: | ||||
- Script Validation | - Script Validation | ||||
- Coins database | - Coins database | ||||
- Memory pool | - Memory pool | ||||