numpy.from_dlpack#

numpy.from_dlpack(x, /, *, device=None, copy=None)#

从实现 __dlpack__ 协议的对象创建一个 NumPy 数组.通常,返回的 NumPy 数组是输入对象的只读视图.更多细节请参见 [1][2].

参数:
x对象

一个实现了 __dlpack____dlpack_device__ 方法的 Python 对象.

device设备, 可选

创建的数组放置的设备.默认:None.如果传递,则必须是 "cpu",这可能允许导入一个尚未在 CPU 上可用的数组.

copybool, 可选

布尔值,指示是否复制输入.如果为 True ,将进行复制.如果为 False ,函数将永远不会复制,并在认为需要复制时引发 BufferError .传递它请求导出器进行复制,导出器可能实现也可能不实现该功能.如果为 None ,函数将尽可能重用现有的内存缓冲区,否则将进行复制.默认值: None .

返回:
outndarray

参考文献

[2]

DLPack 的 Python 规范,https://dmlc.github.io/dlpack/latest/python_spec.html

示例

>>> import torch  
>>> x = torch.arange(10)  
>>> # create a view of the torch tensor "x" in NumPy
>>> y = np.from_dlpack(x)