jhorstmann opened a new pull request, #9210:
URL: https://github.com/apache/arrow-rs/pull/9210

   # Which issue does this PR close?
   
   <!--
   We generally require a GitHub issue to be filed for all bug fixes and 
enhancements and this helps us generate change logs for our releases. You can 
link an issue to this PR using the GitHub syntax.
   -->
   
   - Closes #9209.
   
   # Rationale for this change
   
   Improve the performance benchmark coverage.
   
   # What changes are included in this PR?
   
   
   # Are these changes tested?
   
   Benchmark results on my machine, without target specific optimizations:
   
   ```
   arrow_array_reader/Int32Array/plain encoded, mandatory, no NULLs
                           time:   [8.5123 µs 8.5218 µs 8.5321 µs]
   
   arrow_array_reader/Int32Array/plain encoded, optional, no NULLs
                           time:   [12.843 µs 12.863 µs 12.885 µs]
   
   arrow_array_reader/Int32Array/plain encoded, optional, half NULLs
                           time:   [64.977 µs 65.108 µs 65.267 µs]
   
   arrow_array_reader/struct/Int32Array/plain encoded, mandatory struct, 
optional data, no NULLs
                           time:   [14.456 µs 14.473 µs 14.491 µs]
   
   arrow_array_reader/struct/Int32Array/plain encoded, optional struct, 
optional data, no NULLs
                           time:   [173.14 µs 173.68 µs 174.23 µs]
   
   arrow_array_reader/struct/Int32Array/plain encoded, mandatory struct, 
optional data, half NULLs
                           time:   [65.636 µs 65.780 µs 65.906 µs]
   
   arrow_array_reader/struct/Int32Array/plain encoded, optional struct, 
optional data, half NULLs
                           time:   [433.95 µs 434.29 µs 434.67 µs]
   ```
   
   I think these show that a mandatory struct has negligible overhead compared 
to a non-nested primitive column. But an optional struct, even if its 
definition level is always valid, has a significant overhead.
   
   # Are there any user-facing changes?
   
   no


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

Reply via email to