aboutsummaryrefslogtreecommitdiff
path: root/src/Makefile.bench.include
diff options
context:
space:
mode:
authorMarcoFalke <falke.marco@gmail.com>2019-11-01 18:08:27 -0400
committerMarcoFalke <falke.marco@gmail.com>2019-11-01 18:08:41 -0400
commita5224be6454140ad601347bd536c172b7b6f148b (patch)
tree35ce4829ac7972cc8fce6250a9a557a3bd265ad8 /src/Makefile.bench.include
parent5021ef8d7fff3f53f455e31c62d33268633508df (diff)
parentb0c774b48a3198584e61429ef053844bdde2f9ae (diff)
downloadbitcoin-a5224be6454140ad601347bd536c172b7b6f148b.tar.xz
Merge #17292: Add new mempool benchmarks for a complex pool
b0c774b48a3198584e61429ef053844bdde2f9ae Add new mempool benchmarks for a complex pool (Jeremy Rubin) Pull request description: This PR is related to #17268. It adds a mempool stress test which makes a really big complicated tx graph, and then, similar to mempool_eviction test, trims the size. The test setup is to make 100 original transactions with Rand(10)+2 outputs each. Then, 800 times: we create a new transaction with Rand(10) + 1 parents that are randomly sampled from all existing transactions (with unspent outputs). From each such parent, we then select Rand(remaining outputs) +1 50% of the time, or 1 outputs 50% of the time. Then, we trim the size to 3/4. Then we trim it to just a single transaction. This creates, hopefully, a big bundle of transactions with lots of complex structure, that should really put a strain on the mempool graph algorithms. This ends up testing both the descendant and ancestor tracking. I don't love that the test is "unstable". That is, in order to compare this test to another, you really can't modify any of the internal state because it will have a different order of invocations of the deterministic randomness. However, it certainly suffices for comparing branches. Top commit has no ACKs. Tree-SHA512: cabe96b849b9885878e20eec558915e921d49e6ed1e4b011b22ca191b4c99aa28930a8b963784c9adf78cc8b034a655513f7a0da865e280a1214ae15ebb1d574
Diffstat (limited to 'src/Makefile.bench.include')
-rw-r--r--src/Makefile.bench.include1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/Makefile.bench.include b/src/Makefile.bench.include
index 38143e32b9..fbcab86d8f 100644
--- a/src/Makefile.bench.include
+++ b/src/Makefile.bench.include
@@ -30,6 +30,7 @@ bench_bench_bitcoin_SOURCES = \
bench/gcs_filter.cpp \
bench/merkle_root.cpp \
bench/mempool_eviction.cpp \
+ bench/mempool_stress.cpp \
bench/rpc_blockchain.cpp \
bench/rpc_mempool.cpp \
bench/util_time.cpp \