numpy.from_dlpack#
- numpy.from_dlpack(x, /, *, device=None, copy=None)#
Create a NumPy array from an object implementing the
__dlpack__
protocol. Generally, the returned NumPy array is a read-only view of the input object. See [1] and [2] for more details.- Parameters:
- xobject
A Python object that implements the
__dlpack__
and__dlpack_device__
methods.- devicedevice, optional
Device on which to place the created array. Default:
None
. Must be"cpu"
if passed which may allow importing an array that is not already CPU available.- copybool, optional
Boolean indicating whether or not to copy the input. If
True
, the copy will be made. IfFalse
, the function will never copy, and will raiseBufferError
in case a copy is deemed necessary. Passing it requests a copy from the exporter who may or may not implement the capability. IfNone
, the function will reuse the existing memory buffer if possible and copy otherwise. Default:None
.
- Returns:
- outndarray
References
[1]Array API documentation, https://data-apis.org/array-api/latest/design_topics/data_interchange.html#syntax-for-data-interchange-with-dlpack
[2]Python specification for DLPack, https://dmlc.github.io/dlpack/latest/python_spec.html
Examples
>>> import torch >>> x = torch.arange(10) >>> # create a view of the torch tensor "x" in NumPy >>> y = np.from_dlpack(x)