# TensorarrayWrite — MindSpore Signal+ 使用手册 alpha 文档

# TensorarrayWrite

将张量写入到张量数组的指定索引位置。该算子不区分数据类型，适用于所有数据类型。

\[\text{output\_data} = \text{handle\_data}[\text{index}]\]

该算子会将 handle_data[index] 指向的数据复制到 output_data 中，复制的大小为 handle_size[index] 字节。

输入：

  - handle_data - 张量数组的数据指针数组（void** 类型），每个元素指向一个张量的数据。

  - handle_size - 每个张量的大小数组（int* 类型），handle_size[i] 表示 handle_data[i] 指向的数据大小（字节）。

  - index - 读取的索引（int 类型），指定从 handle_data 数组中读取哪个张量。

  - core_mask - 核掩码（int），仅共享存储版本需要。

输出：

  - output_data - 输出数据指针（void* 类型），包含复制后的数据。

  - output_size - 输出大小指针（int* 类型），指向存储输出大小的变量。调用后，*output_size 会被设置为 handle_size[index]。

支持平台：

  `FT78NE` `MT7004`

备注

- FT78NE 支持fp32, int16, int32, cplx64

- MT7004 支持fp16, fp32, int16, int32, cplx64

- 算子会复制数据，输出数据与输入数据独立

- 调用前需要确保 output_data 指向的内存空间足够大（至少 handle_size[index] 字节）

- index 必须在 handle_data 数组的有效范围内

共享存储版本:

见TensorArrayRead。

私有存储版本:

见TensorArrayRead。