diff options
| -rw-r--r-- | benchmarks/include/standard_benchmarks.h | 6 | ||||
| -rw-r--r-- | benchmarks/irs_bench.cpp | 2 | ||||
| -rw-r--r-- | include/query/irs.h | 2 |
3 files changed, 8 insertions, 2 deletions
diff --git a/benchmarks/include/standard_benchmarks.h b/benchmarks/include/standard_benchmarks.h index fe53d62..83e3aaa 100644 --- a/benchmarks/include/standard_benchmarks.h +++ b/benchmarks/include/standard_benchmarks.h @@ -40,6 +40,12 @@ static void run_static_queries(S *shard, std::vector<QP> &queries) { auto q = &queries[i]; auto state = Q::get_query_state(shard, q); + + std::vector<void*> shards = {shard}; + std::vector<void*> states = {state}; + + Q::process_query_states(q, states, nullptr); + auto res = Q::query(shard, state, q); total += res.size(); diff --git a/benchmarks/irs_bench.cpp b/benchmarks/irs_bench.cpp index 976adf9..36d88f6 100644 --- a/benchmarks/irs_bench.cpp +++ b/benchmarks/irs_bench.cpp @@ -50,7 +50,7 @@ int main(int argc, char **argv) { } /* read in the range queries and add sample size and rng for sampling */ auto queries = read_range_queries<QP>(q_fname, .001); - for (auto q : queries) { + for (auto &q : queries) { q.sample_size = 1000; q.rng = rng; } diff --git a/include/query/irs.h b/include/query/irs.h index e2d9325..51eb4e2 100644 --- a/include/query/irs.h +++ b/include/query/irs.h @@ -103,7 +103,7 @@ public: weights.push_back((bs) ? bs->records.size() : 0); } - size_t total_weight = 0; + size_t total_weight = weights[0]; for (auto &s : shard_states) { auto state = (State<R> *) s; total_weight += state->total_weight; |