pub fn reduce<T: RudaRecord, O: RudaBinaryOp<T>>(
input: &RudaRecordArray<T>,
scratch: &mut RudaRecordShared<T>,
op: &O,
valid: usize,
threads: usize,
items: usize,
) -> Tpub fn reduce<T: RudaRecord, O: RudaBinaryOp<T>>(
input: &RudaRecordArray<T>,
scratch: &mut RudaRecordShared<T>,
op: &O,
valid: usize,
threads: usize,
items: usize,
) -> T