昇腾社区首页
中文
注册
开发者
下载

AddRmsNormDynamicQuantFusionPass

融合模式

该融合将符合图融合pattern的AddRmsNorm算子和DynamicQuant算子融合成融合算子AddRmsNormDynamicQuant,其中AddRmsNorm算子的输出y作为DynamicQuant算子的第一个输入。

场景1:单路模式

场景2:双路模式

使用约束

  • 融合前AddRmsNorm和DynamicQuant算子输入类型需要保持一致(即全是fp16或者bf16)。
  • DynamicQuant的输出yout的约束:
    • Atlas A2 训练系列产品/Atlas A2 推理系列产品:yout仅支持量化类型为int8。
    • Atlas A3 训练系列产品/Atlas A3 推理系列产品:yout仅支持量化类型为int8。
  • dtype约束:
    • 有平滑系数场景下,DynamicQuant的smooth_scales dtype 须和AddRmsNorm的x1的dtype相同。
  • shape约束:
    • 输入gamma的shape必须为1维,并且shape取值和x1,x2输入shape的尾轴相同,即:gamma.shape = [x1.shape[-1]]。
  • attr约束:
    • Atlas A2 训练系列产品/Atlas A2 推理系列产品:dst_type仅支持DT_INT8。
    • Atlas A3 训练系列产品/Atlas A3 推理系列产品:dst_type仅支持DT_INT8。
    • 双路模式下,DynamicQuant0和DynamicQuant1的dst_type须相同。

支持的型号

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

Atlas A3 训练系列产品/Atlas A3 推理系列产品