From 7276794ea31b2494b4a172c22441a318881b1528 Mon Sep 17 00:00:00 2001 From: Douglas Rumbaugh Date: Tue, 25 Jul 2023 15:00:30 -0400 Subject: KNN Benches: added k as an optional cmdline argument --- benchmarks/mtree_knn_bench.cpp | 13 ++++--------- benchmarks/vptree_knn_bench.cpp | 9 ++++----- 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/benchmarks/mtree_knn_bench.cpp b/benchmarks/mtree_knn_bench.cpp index 7ae4e83..9d4cc57 100644 --- a/benchmarks/mtree_knn_bench.cpp +++ b/benchmarks/mtree_knn_bench.cpp @@ -42,7 +42,7 @@ static void mtree_knn_bench(MTree &tree, std::vector \n"); + fprintf(stderr, "Usage: mtree_knn_bench [k]\n"); exit(EXIT_FAILURE); } @@ -50,15 +50,10 @@ int main(int argc, char **argv) size_t record_count = atol(argv[2]); double delete_prop = atof(argv[3]); std::string qfilename = std::string(argv[4]); - - size_t buffer_cap = 12000; - size_t scale_factor = 6; - double max_delete_prop = delete_prop; - - double insert_batch = 0.1; + size_t k = (argc == 6) ? atol(argv[5]) : 10; init_bench_env(record_count, true); - auto queries = read_knn_queries>(qfilename, 10); + auto queries = read_knn_queries>(qfilename, k); auto mtree = MTree(); @@ -69,7 +64,7 @@ int main(int argc, char **argv) // warm up the tree with initial_insertions number of initially inserted // records - size_t warmup_cnt = insert_batch * record_count; + size_t warmup_cnt = 0.1 * record_count; warmup(datafile, mtree, warmup_cnt, delete_prop, to_delete, true, true); size_t insert_cnt = record_count - warmup_cnt; diff --git a/benchmarks/vptree_knn_bench.cpp b/benchmarks/vptree_knn_bench.cpp index 0021c4a..d8247e4 100644 --- a/benchmarks/vptree_knn_bench.cpp +++ b/benchmarks/vptree_knn_bench.cpp @@ -3,7 +3,7 @@ int main(int argc, char **argv) { if (argc < 5) { - fprintf(stderr, "Usage: vptree_knn_bench \n"); + fprintf(stderr, "Usage: vptree_knn_bench [k]\n"); exit(EXIT_FAILURE); } @@ -11,15 +11,14 @@ int main(int argc, char **argv) size_t record_count = atol(argv[2]); double delete_prop = atof(argv[3]); std::string qfilename = std::string(argv[4]); + size_t k = (argc == 6) ? atol(argv[5]) : 10; size_t buffer_cap = 12000; size_t scale_factor = 6; double max_delete_prop = delete_prop; - double insert_batch = 0.1; - init_bench_env(record_count, true); - auto queries = read_knn_queries>(qfilename, 10); + auto queries = read_knn_queries>(qfilename, k); auto de_vp_knn = ExtendedVPTree_KNN(buffer_cap, scale_factor, max_delete_prop); @@ -30,7 +29,7 @@ int main(int argc, char **argv) // warm up the tree with initial_insertions number of initially inserted // records - size_t warmup_cnt = insert_batch * record_count; + size_t warmup_cnt = 0.1 * record_count; warmup(datafile, de_vp_knn, warmup_cnt, delete_prop, to_delete, true, true); size_t insert_cnt = record_count - warmup_cnt; -- cgit v1.2.3