rust-numpy icon indicating copy to clipboard operation
rust-numpy copied to clipboard

How create Array from exists Memory without copy?

Open ZHUI opened this issue 1 year ago • 1 comments

I find https://docs.rs/numpy/latest/numpy/array/struct.PyArray.html#method.from_slice

by it copy the memory.

ZHUI avatar Apr 08 '24 06:04 ZHUI

Conversions which take ownership of Rust data and transfer it over to Python use the IntoPyArray trait.

It basically supports Vec<T>, Box<[T]> and Array<T, D> where T is any of the supported element types.

If this ties in with https://github.com/PyO3/pyo3/issues/4058, I could image adding support for Mmap reinterpreted as [T] to turn this into a one-dimensional NumPy array without copying which you can then reshape into the final form without copying via the usual NumPy API.

adamreichold avatar Apr 08 '24 09:04 adamreichold