Ritchie created ARROW-10274:
-------------------------------
Summary: [Rust] arithmetic without SIMD does unnecesary copy
Key: ARROW-10274
URL: https://issues.apache.org/jira/browse/ARROW-10274
Project: Apache Arrow
Issue Type: Improvement
Reporter: Ritchie
The arithmetic kernels that don't use SIMD create a `vec` in memory and later
copy that data into a Buffer. Maybe we could directly write the arithmetic
result to a mutable buffer and prevent this redundant copy?
{code:java}
let values = (0..left.len())
.map(|i| op(left.value(i), right.value(i)))
.collect::<Vec<T::Native>>();
let data = ArrayData::new(
T::get_data_type(),
left.len(),
None,
null_bit_buffer,
0,
vec![Buffer::from(values.to_byte_slice())],
vec![],
);{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)