昇腾社区首页
中文
注册

Reshape

支持的产品型号

Atlas 训练系列产品

Atlas A2训练系列产品/Atlas 800I A2推理产品

Atlas 200I/500 A2推理产品

Atlas 推理系列产品

函数功能

该函数不改变算子tensor数据,只是将用户传入的输入tensor x 的shape转换成该函数的第二个参数shape。

若reshape转换成功,则返回带有目标shape信息的aclTensor;否则失败,返回nullptr。

函数原型

  • const aclTensor *Reshape(const aclTensor *x, const op::Shape &shape, aclOpExecutor *executor)
  • const aclTensor *Reshape(const aclTensor *x, const aclIntArray *shape, aclOpExecutor *executor)

参数说明

参数

输入/输出

说明

x

输入

待转换shape的tensor数据。

shape

输入

转换后的目标shape,支持aclIntArray、op::Shape(GE定义的描述一组shape信息的类)等数据类型。

executor

输入

op执行器,包含了算子计算流程。

返回值说明

若reshape转换成功,则返回带有目标shape信息的aclTensor给调用者;若失败,则返回nullptr。

约束说明

  • reshape转换成功的前提是x的ShapeSize需要和第二个参数shape的ShapeSize相等,所谓的ShapeSize举例如下:A的shape=(1, 3, 256, 256), 则A的ShapeSize=1*3*256*256。
  • 当前不支持转换成空tensor,所谓的空tensor即shape中包含0。
  • x输入必须保证是连续内存数据。