jrevels commented on PR #493:
URL: https://github.com/apache/arrow-julia/pull/493#issuecomment-1839654384

   Alright, I changed the approach here after profiling different candidate 
approaches. Looks like leaving `NamedTuple` construction (or even just any 
intermediate struct construction) in the critical path here borks `getindex` 
performance, annoyingly, so ended up not going that route. Users of this 
feature can do still construct `NamedTuple`s themselves, if needed, but this 
new approach avoids doing so on the default path. 
   
   on this PR now:
   
   ```jl
   BenchmarkTools.Trial: 8170 samples with 1 evaluation.
    Range (min … max):  530.500 μs …   2.318 ms  ┊ GC (min … max): 0.00% … 
74.22%
    Time  (median):     547.833 μs               ┊ GC (median):    0.00%
    Time  (mean ± σ):   610.966 μs ± 263.948 μs  ┊ GC (mean ± σ):  9.75% ± 
14.73%
   
     █▆▃▁                                                      ▁▃▁ ▁
     ████▇▇▅▃▅▁▁▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▄███ █
     530 μs        Histogram: log(frequency) by time       1.75 ms <
   
    Memory estimate: 2.22 MiB, allocs estimate: 18387.
    ```


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