diff options
author | Nick Mathewson <nickm@torproject.org> | 2014-05-06 20:44:41 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2014-05-06 20:44:41 -0400 |
commit | 4a740451acdd953440312e355baa6837825fa405 (patch) | |
tree | 2054578380bb0c870720f82b2dd3901b58ec313a /src/test | |
parent | 5cea500ce75116abe4deb46d759f5ac1048dd4cc (diff) | |
parent | e9c1c3ff7f3123495493bad7aa77ef6194005c75 (diff) | |
download | tor-4a740451acdd953440312e355baa6837825fa405.tar.gz tor-4a740451acdd953440312e355baa6837825fa405.zip |
Merge remote-tracking branch 'public/bug11750'
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/bench.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/test/bench.c b/src/test/bench.c index c9cc101b72..a3fa7fe319 100644 --- a/src/test/bench.c +++ b/src/test/bench.c @@ -338,6 +338,30 @@ bench_dmap(void) } static void +bench_siphash(void) +{ + char buf[128]; + int lens[] = { 7, 8, 15, 16, 20, 32, 111, 128, -1 }; + int i, j; + uint64_t total; + uint64_t start, end; + const int N = 300000; + crypto_rand(buf, sizeof(buf)); + + for (i = 0; lens[i] > 0; ++i) { + total = 0; + reset_perftime(); + start = perftime(); + for (j = 0; j < N; ++j) { + total += siphash24g(buf, lens[i]); + } + end = perftime(); + printf("siphash24g(%d): %.2f ns per call\n", + lens[i], NANOCOUNT(start,end,N)); + } +} + +static void bench_cell_ops(void) { const int iters = 1<<16; @@ -487,6 +511,7 @@ typedef struct benchmark_t { static struct benchmark_t benchmarks[] = { ENT(dmap), + ENT(siphash), ENT(aes), ENT(onion_TAP), #ifdef CURVE25519_ENABLED |