Add benchmark for listunspent

Closes #2645.
This commit is contained in:
Jack Grigg
2017-10-04 12:48:50 +01:00
parent b86b9feb6c
commit 99dd50c30c
4 changed files with 20 additions and 2 deletions

View File

@@ -2609,6 +2609,8 @@ UniValue zc_benchmark(const UniValue& params, bool fHelp)
throw JSONRPCError(RPC_TYPE_ERROR, "Benchmark must be run in regtest mode");
}
sample_times.push_back(benchmark_loadwallet());
} else if (benchmarktype == "listunspent") {
sample_times.push_back(benchmark_listunspent());
} else {
throw JSONRPCError(RPC_TYPE_ERROR, "Invalid benchmarktype");
}

View File

@@ -465,3 +465,12 @@ double benchmark_loadwallet()
post_wallet_load();
return res;
}
double benchmark_listunspent()
{
UniValue params(UniValue::VARR);
struct timeval tv_start;
timer_start(tv_start);
auto unspent = listunspent(params, false);
return timer_stop(tv_start);
}

View File

@@ -18,5 +18,6 @@ extern double benchmark_increment_note_witnesses(size_t nTxs);
extern double benchmark_connectblock_slow();
extern double benchmark_sendtoaddress(CAmount amount);
extern double benchmark_loadwallet();
extern double benchmark_listunspent();
#endif