Yicong-Huang opened a new pull request, #57118:
URL: https://github.com/apache/spark/pull/57118

   ### What changes were proposed in this pull request?
   
   This PR adds ASV benchmarks for end-to-end regular Python UDF execution 
across Pickle and Arrow paths.
   
   The new benchmark covers scalar Spark SQL types, timestamp, common nested 
types, and a scalar end-to-end workload variant with multiple UDF outputs and 
light per-row Python work. It also uses row counts from 100K to 6.4M so 
benchmark runs can show scaling behavior across input sizes.
   
   ### Why are the changes needed?
   
   Existing Arrow conversion benchmarks isolate lower-level conversion costs, 
but they do not show full regular Python UDF query cost across input 
generation, Python worker execution, Arrow/Pickle transfer, UDF evaluation, 
result conversion, and writing to a noop sink. These benchmarks make it easier 
to compare Arrow-optimized Python UDF behavior against the pickled path for 
scalar and nested data types.
   
   ### Does this PR introduce _any_ user-facing change?
   
   No.
   
   ### How was this patch tested?
   
   - Ran Python formatting and Ruff through the pre-commit hook.
   - Ran Python compilation for the new benchmark file:
   
   ```bash
   /Users/yicong.huang/Repos/spark/venv/bin/python -m py_compile 
python/benchmarks/bench_arrow_python_udf_types.py
   ```
   
   - Ran a smoke test that imported the benchmark and executed small Arrow UDF 
scalar and nested cases locally with 1,000 rows.
   
   ### Was this patch authored or co-authored using generative AI tooling?
   
   Generated-by: OpenAI Codex


-- 
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