numpy.from_dlpack#
- numpy.from_dlpack(x, /, *, device=None, copy=None)#
从实现
__dlpack__协议的对象创建一个 NumPy 数组.通常,返回的 NumPy 数组是输入对象的视图.有关更多详细信息,请参见 [1] 和 [2] .- 参数:
- xobject
实现了
__dlpack__和__dlpack_device__方法的 Python 对象.- devicedevice,可选
用于放置所创建数组的设备.默认值:
None.如果传递了"cpu",则必须为"cpu",这可能允许导入尚未 CPU 可用的数组.- copybool, 可选
布尔值,指示是否复制输入.如果为
True,则将进行复制.如果为False,则该函数将永远不会复制,并且在认为需要复制的情况下会引发BufferError.传递它会从导出器请求副本,导出器可以实现也可以不实现该功能.如果为None,则该函数将尽可能重用现有的内存缓冲区,否则进行复制.默认值:None.
- 返回:
- outndarray
参考
[1]Array API 文档,https://data-apis.org/array-api/latest/design_topics/data_interchange.html#syntax-for-data-interchange-with-dlpack
[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)