跳到主要内容

ShapeInfo

功能说明

ShapeInfo用来存放LocalTensor或GlobalTensor的shape信息。

定义原型

  • ShapeInfo结构定义

    struct ShapeInfo {
    public:
    __aicore__ inline ShapeInfo();
    __aicore__ inline ShapeInfo(const uint8_t inputShapeDim, const uint32_t inputShape[],
    const uint8_t inputOriginalShapeDim, const uint32_t inputOriginalShape[], const DataFormat inputFormat);
    __aicore__ inline ShapeInfo(const uint8_t inputShapeDim, const uint32_t inputShape[], const DataFormat inputFormat);
    __aicore__ inline ShapeInfo(const uint8_t inputShapeDim, const uint32_t inputShape[]);
    uint8_t shapeDim;
    uint8_t originalShapeDim;
    uint32_t shape[K_MAX_DIM];
    uint32_t originalShape[K_MAX_DIM];
    DataFormat dataFormat;
    };
  • 获取Shape中所有dim的累乘结果

    __aicore__ inline int GetShapeSize(const ShapeInfo& shapeInfo)

函数说明

表1 ShapeInfo结构参数说明

参数名称类型描述
shapeDimuint8_t现有的shape维度。
shapeuint32_t现有的shape。
originalShapeDimuint8_t原始的shape维度。
originalShapeuint32_t原始的shape。
dataFormatDataFormat数据排布格式。NCHW 取值为 0,NHWC取值为1。 - NCHW:数据按NCHW排布。 - NHWC:数据按NHWC排布。

表2 GetShapeSize参数说明

函数名称入参说明含义
shapeInfoTensor的shape信息。用来存放LocalTensor或GlobalTensor的shape信息。