MCPcopy Create free account
hub / github.com/apache/arrow / MinimalEndToEndBench

Function MinimalEndToEndBench

cpp/src/arrow/dataset/scanner_benchmark.cc:209–230  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

207};
208
209static void MinimalEndToEndBench(benchmark::State& state) {
210 size_t num_batches = state.range(0);
211 size_t batch_size = state.range(1);
212
213 std::function<Result<std::shared_ptr<acero::ExecNodeOptions>>(size_t, size_t)>
214 options_factory;
215 std::string scan_factory = "scan";
216 if (state.range(2) == kScanIdx) {
217 options_factory = kScanFactory;
218 } else if (state.range(2) == kScanV2Idx) {
219 options_factory = kScanV2Factory;
220 scan_factory = "scan2";
221 }
222
223 for (auto _ : state) {
224 MinimalEndToEndScan(num_batches, batch_size, scan_factory, options_factory);
225 }
226
227 state.SetItemsProcessed(state.iterations() * num_batches);
228 state.SetBytesProcessed(state.iterations() * num_batches * batch_size *
229 GetBytesForSchema());
230}
231
232static void ScanOnlyBench(benchmark::State& state) {
233 size_t num_batches = state.range(0);

Callers

nothing calls this directly

Calls 2

MinimalEndToEndScanFunction · 0.85
GetBytesForSchemaFunction · 0.85

Tested by

no test coverage detected