andygrove opened a new pull request, #23882:
URL: https://github.com/apache/datafusion/pull/23882

   ## Which issue does this PR close?
   
   N/A
   
   ## Rationale for this change
   
   `bin`, `soundex`, `quote`, and `url_encode` in `datafusion-spark` had no
   benchmark coverage.
   
   This PR adds the benchmarks on their own, with no change to any function, so
   they can be merged ahead of the optimizations that follow. That way the 
baseline
   is measurable on `main` and CI can compare the optimization PRs against it,
   rather than the harness and the change arriving together.
   
   ## What changes are included in this PR?
   
   Four new Criterion benchmarks under `datafusion/spark/benches/`, registered 
in
   `datafusion/spark/Cargo.toml`. Each runs at 1024 and 8192 rows with a 20% 
null
   density and a fixed RNG seed:
   
   | Benchmark | Cases |
   | --- | --- |
   | `bin.rs` | small values rendering to a few binary digits; full-range 
values rendering to the maximum 64 |
   | `soundex_quote.rs` (soundex) | words of varying length, so both truncated 
and zero-padded codes are hit; `Utf8` and `Utf8View` |
   | `soundex_quote.rs` (quote) | a mix of strings with and without embedded 
quotes, so escaping is covered without dominating; `Utf8` and `Utf8View` |
   | `url_encode.rs` | characters mostly passed through with a minority needing 
percent-escaping; `Utf8`, `LargeUtf8`, and `Utf8View` |
   
   No function implementation is touched.
   
   The optimization PRs that build on these baselines:
   
   - #23880 — `soundex` and `quote`
   - #23881 — `bin` (and `char`, which already had a benchmark)
   - `url_encode` — linked once opened
   
   ## Are these changes tested?
   
   Benchmarks are not tests, but all four compile and run against unmodified 
`main`;
   the numbers they produce on `main` are the baselines quoted in the 
optimization
   PRs above.
   
   ## Are there any user-facing changes?
   
   No. This adds benchmark files only.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to