mindspore.ops.move_to

mindspore.ops.move_to(input, to='CPU', blocking=True)[源代码]

拷贝tensor到目标设备,包含同步和异步两种方式,默认是同步方式。

说明

该接口当前仅支持graph mode,并且jit_level为O0或O1。

参数:
  • input (Union[Tensor, list[int], tuple[int]]) - 输入tensor,当输入为list和tuple时会先转换为tensor再进行拷贝。

  • to (str,可选) - 指定目标设备,可选值为 "Ascend""CPU" 。默认 "CPU"

  • blocking (bool,可选) - 是否使用同步拷贝。默认 True 表示同步拷贝。

返回:

目标设备上的新tensor。

支持平台:

Ascend CPU

样例:

>>> import mindspore
>>> from mindspore import nn, ops, Tensor
>>> mindspore.set_context(mode=mindspore.GRAPH_MODE)
>>> class MoveToNet(nn.Cell):
...     def __init__(self):
...         super().__init__()
...
...     def construct(self, x):
...         cpu_x = ops.move_to(x, "CPU")
...         npu_x = ops.move_to(cpu_x, "Ascend")
...         return npu_x
...
>>> net = MoveToNet()
>>> x = Tensor([1, 2, 3], mindspore.int64)
>>> y = net(x)
>>> print(y)
[1 2 3]