Skip to content

Commit 9a6fd81

Browse files
committed
Add string view filter benchmark.
1 parent ef4f44f commit 9a6fd81

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

arrow/benches/filter_kernels.rs

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,32 @@ fn add_benchmark(c: &mut Criterion) {
214214
c.bench_function("filter single record batch", |b| {
215215
b.iter(|| filter_record_batch(&batch, &filter_array))
216216
});
217+
218+
let data_array = create_string_view_array_with_len(size, 0.5, 4, false);
219+
c.bench_function("filter context short string view (kept 1/2)", |b| {
220+
b.iter(|| bench_built_filter(&filter, &data_array))
221+
});
222+
c.bench_function(
223+
"filter context short string view high selectivity (kept 1023/1024)",
224+
|b| b.iter(|| bench_built_filter(&dense_filter, &data_array)),
225+
);
226+
c.bench_function(
227+
"filter context short string view low selectivity (kept 1/1024)",
228+
|b| b.iter(|| bench_built_filter(&sparse_filter, &data_array)),
229+
);
230+
231+
let data_array = create_string_view_array_with_len(size, 0.5, 4, true);
232+
c.bench_function("filter context mixed string view (kept 1/2)", |b| {
233+
b.iter(|| bench_built_filter(&filter, &data_array))
234+
});
235+
c.bench_function(
236+
"filter context mixed string view high selectivity (kept 1023/1024)",
237+
|b| b.iter(|| bench_built_filter(&dense_filter, &data_array)),
238+
);
239+
c.bench_function(
240+
"filter context mixed string view low selectivity (kept 1/1024)",
241+
|b| b.iter(|| bench_built_filter(&sparse_filter, &data_array)),
242+
);
217243
}
218244

219245
criterion_group!(benches, add_benchmark);

0 commit comments

Comments
 (0)