summaryrefslogtreecommitdiffstats
path: root/benchmark/dict_bench.c
diff options
context:
space:
mode:
Diffstat (limited to 'benchmark/dict_bench.c')
-rw-r--r--benchmark/dict_bench.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/benchmark/dict_bench.c b/benchmark/dict_bench.c
index 279e6ad..9184fb4 100644
--- a/benchmark/dict_bench.c
+++ b/benchmark/dict_bench.c
@@ -12,10 +12,10 @@ typedef struct {
#define ZIX_HASH_KEY_TYPE ZixChunk
#define ZIX_HASH_RECORD_TYPE ZixChunk
-#include "zix/attributes.h"
-#include "zix/digest.h"
-#include "zix/hash.h"
-#include "zix/status.h"
+#include <zix/attributes.h>
+#include <zix/digest.h>
+#include <zix/hash.h>
+#include <zix/status.h>
ZIX_DISABLE_GLIB_WARNINGS
#include <glib.h>
@@ -27,7 +27,6 @@ ZIX_RESTORE_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include <time.h>
typedef struct {
ZixChunk* chunks;
@@ -45,8 +44,7 @@ lcg64(const uint64_t i)
return (a * i) + c;
}
-ZIX_PURE_FUNC
-static const ZixChunk*
+ZIX_PURE_FUNC static const ZixChunk*
identity(const ZixChunk* record)
{
return record;
@@ -93,6 +91,7 @@ read_inputs(FILE* const fd)
inputs.chunks = new_chunks;
inputs.chunks[inputs.n_chunks].buf = (char*)malloc(buf_len);
inputs.chunks[inputs.n_chunks].len = this_str_len;
+ assert(inputs.chunks[inputs.n_chunks].buf);
memcpy(inputs.chunks[inputs.n_chunks].buf, inputs.buf, buf_len);
this_str_len = 0;
if (++inputs.n_chunks == max_n_strings) {
@@ -129,6 +128,8 @@ run(FILE* const fd)
FILE* insert_dat = fopen("dict_insert.txt", "w");
FILE* search_dat = fopen("dict_search.txt", "w");
+ assert(insert_dat);
+ assert(search_dat);
fprintf(insert_dat, "# n\tGHashTable\tZixHash\n");
fprintf(search_dat, "# n\tGHashTable\tZixHash\n");
@@ -147,7 +148,7 @@ run(FILE* const fd)
// Benchmark insertion
// GHashTable
- struct timespec insert_start = bench_start();
+ BenchmarkTime insert_start = bench_start();
for (size_t i = 0; i < n; ++i) {
g_hash_table_insert(hash, inputs.chunks[i].buf, inputs.chunks[i].buf);
}
@@ -165,7 +166,7 @@ run(FILE* const fd)
// Benchmark search
// GHashTable
- struct timespec search_start = bench_start();
+ BenchmarkTime search_start = bench_start();
for (size_t i = 0; i < n; ++i) {
const size_t index = (size_t)(lcg64(seed + i) % n);
char* volatile match =