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

   > This PR was created by an LLM as a draft PR. I will mark it as ready for 
review after human review.
   
   
   ## Which issue does this PR close?
   
   N/A — autonomous exploratory PR.
   
   ## Rationale for this change
   
   Resolve the date_trunc format keyword without allocating an uppercased 
String per row (ASCII case-insensitive match plus a last-format memo), removing 
a heap allocation from every row of the array-format path.
   
   ## What changes are included in this PR?
   
   Resolve the date_trunc format keyword without allocating an uppercased 
String per row (ASCII case-insensitive match plus a last-format memo), removing 
a heap allocation from every row of the array-format path.
   
   ## How are these changes tested?
   
   Correctness: unit tests + seeded differential fuzz (bit-identical Arrow 
output vs `main`).
   
   Benchmark (criterion):
   
   - month: 60.556% faster (base 143134ns -> cand 56457ns)
   - week: 64.05% faster (base 138437ns -> cand 49768ns)
   - mixed: 54.003% faster (base 157749ns -> cand 72560ns)
   - year: 67.326% faster (base 134453ns -> cand 43931ns)
   - quarter: 53.059% faster (base 159586ns -> cand 74911ns)
   
   Full criterion output:
   
   ```text
   date_trunc_array_fmt/year
                           time:   [43.888 µs 43.941 µs 44.010 µs]
                           change: [−67.368% −67.326% −67.273%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 13 outliers among 100 measurements (13.00%)
     1 (1.00%) low severe
     1 (1.00%) low mild
     4 (4.00%) high mild
     7 (7.00%) high severe
   date_trunc_array_fmt/quarter
                           time:   [74.951 µs 74.980 µs 75.019 µs]
                           change: [−53.137% −53.059% −52.998%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 9 outliers among 100 measurements (9.00%)
     2 (2.00%) low severe
     3 (3.00%) low mild
     2 (2.00%) high mild
     2 (2.00%) high severe
   date_trunc_array_fmt/month
                           time:   [56.438 µs 56.467 µs 56.513 µs]
                           change: [−60.672% −60.556% −60.480%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 9 outliers among 100 measurements (9.00%)
     1 (1.00%) low severe
     2 (2.00%) low mild
     3 (3.00%) high mild
     3 (3.00%) high severe
   date_trunc_array_fmt/week
                           time:   [49.729 µs 49.783 µs 49.882 µs]
                           change: [−64.092% −64.050% −64.005%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 9 outliers among 100 measurements (9.00%)
     1 (1.00%) low mild
     4 (4.00%) high mild
     4 (4.00%) high severe
   date_trunc_array_fmt/mixed
                           time:   [72.540 µs 72.573 µs 72.631 µs]
                           change: [−54.045% −54.003% −53.946%] (p = 0.00 < 
0.05)
                           Performance has improved.
   Found 7 outliers among 100 measurements (7.00%)
     2 (2.00%) low mild
     2 (2.00%) high mild
     3 (3.00%) high severe
   ```
   
   
   


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