文档
注册

关键概念

解释使用ATC工具过程中遇到的一些术语或者缩略语。

  • AIPP

    AIPP(Artificial Intelligence Pre-Processing)AI预处理,是昇腾AI处理器提供的硬件图像预处理模块,包括色域转换,图像归一化(减均值/乘系数)和抠图(指定抠图起始点,抠出神经网络需要大小的图片)等功能。

    Atlas 200/300/500 推理产品Atlas 训练系列产品场景:DVPP模块输出的图片多为对齐后的YUV420SP类型,不支持输出RGB图片;如果模型需要RGB格式的图片,业务流需要使用AIPP模块转换对齐后YUV420SP类型图片的格式,并抠出模型需要的输入图片。

  • YUV420SP

    有损图像颜色编码格式,常用为YUV420SP_UV、YUV420SP_VU两种格式。

  • 知识库

    存储调优后的Schedule,在后续算子编译中直接使用。

  • cost model

    评估器,调优过程中如果没有命中知识库,则通过cost model评估tiling空间中tiling的优劣,选择最优tiling数据。

  • 数据排布格式(Format)

    Format为数据的物理排布格式,定义了解读数据的维度,比如1D、2D、3D、4D、5D等。

    • NCHW和NHWC

      在深度学习框架中,多维数据通过多维数组存储,比如卷积神经网络的特征图(Feature Map)通常用四维数组保存,即4D,4D格式解释如下:

      • N:Batch数量,例如图像的数目。
      • H:Height,特征图高度,即垂直高度方向的像素个数。
      • W:Width,特征图宽度,即水平宽度方向的像素个数。
      • C:Channels,特征图通道,例如彩色RGB图像的Channels为3。

      由于数据只能线性存储,因此这四个维度有对应的顺序。不同深度学习框架会按照不同的顺序存储特征图数据,比如Caffe,排列顺序为[Batch, Channels, Height, Width],即NCHW;TensorFlow中,排列顺序为[Batch, Height, Width, Channels],即NHWC。

      图1所示,以一张格式为RGB的图片为例,NCHW中,C排列在外层,每个通道内,像素紧挨在一起,实际存储的是“RRRRRRGGGGGGBBBBBB”,即同一通道的所有像素值顺序存储在一起;而NHWC中C排列在最内层,每个通道内,像素间隔挨在一起,实际存储的则是“RGBRGBRGBRGBRGBRGB”,即多个通道的同一位置的像素值顺序存储在一起。

      图1 NCHW和NHWC
    • NC1HWC0

      昇腾AI处理器中,为了提高通用矩阵乘法(GEMM)运算数据块的访问效率,所有张量数据统一采用NC1HWC0的五维数据格式,如下图所示。

      图2 NC1HWC0

      其中C0与微架构强相关,等于AI Core中矩阵计算单元的大小;C1=(C+C0-1)/C0,如果结果不整除,向上取整。

      例如:NHWC -> NC1HWC0的转换过程为:
      1. 将NHWC数据在C维度进行分割,变成C1份NHWC0。
      2. 将C1份NHWC0在内存中连续排列,由此变成NC1HWC0。
      NHWC->NC1HWC0的转换场景示例:
      1. 首层RGB图像通过AIPP转换为NC1HWC0格式。
      2. 中间层Feature Map每层输出为NC1HWC0格式,在搬运过程中需要重排。
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词