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]