Pass num of iters to benchmarks as variable, and define envvar

This commit is contained in:
Elichai Turkel committed 2020-03-13 11:48:01 +02:00
1 parent 02dd5f1bbb
commit ca4906b02e
7 files changed
+150 -123

No files matched your search

+5 -3
View File
@@ -34,12 +34,12 @@ static void bench_ecdh_setup(void* arg) {
CHECK(secp256k1_ec_pubkey_parse(data->ctx, &data->point, point, sizeof(point)) == 1);
}
static void bench_ecdh(void* arg) {
static void bench_ecdh(void* arg, int iters) {
int i;
unsigned char res[32];
bench_ecdh_data *data = (bench_ecdh_data*)arg;
for (i = 0; i < 20000; i++) {
for (i = 0; i < iters; i++) {
CHECK(secp256k1_ecdh(data->ctx, res, &data->point, data->scalar, NULL, NULL) == 1);
}
}
@@ -47,10 +47,12 @@ static void bench_ecdh(void* arg) {
int main(void) {
bench_ecdh_data data;
int iters = get_iters(20000);
/* create a context with no capabilities */
data.ctx = secp256k1_context_create(SECP256K1_FLAGS_TYPE_CONTEXT);
run_benchmark("ecdh", bench_ecdh, bench_ecdh_setup, NULL, &data, 10, 20000);
run_benchmark("ecdh", bench_ecdh, bench_ecdh_setup, NULL, &data, 10, iters);
secp256k1_context_destroy(data.ctx);
return 0;