pub fn pack_kernel_args(args: &[KernelArg<'_>]) -> (Vec<u64>, Vec<usize>)Expand description
2026-09-25: Pack typed args into u64 slots; returns the slots and each argument’s starting slot index.
A buffer takes one slot. A byte argument takes ceil(len / 8) consecutive
slots (one when empty), little-endian, the last zero-padded; a 128-byte
CUtensorMap takes 16. Each argument contributes one entry to starts.