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

流水类型介绍

在算子执行过程中,算子逻辑的约束要求计算是要保证一定顺序执行的。此外,计算前往往需要把计算数据搬运到计算单元上,这就导致了需要等待上一个步骤完成后才能开始进行下一个步骤的情况。此时就可以使用相关同步接口完成这样的功能。

在AI Core上执行的操作会分配到不同的流水线上执行,流水线统称为 pipe,包括以下几种:

  • pipe = S,标量流水线,每条接口首先会经过它。标量加载或存储接口的顺序由硬件处理。
  • pipe = V,向量流水线,也表示为 V1。
  • pipe = M,矩阵计算流水线。
  • pipe = MTE1,从 L1 到 L0A 或 L0B,从 L1 到 UB,SET_{L0A/L0B}_2D 的搬运操作在该流水线完成。
  • pipe = MTE2,搬运操作,包括从 OUT 到 L1,从 OUT 到 L0A 或 L0B,从 OUT 到 UB,SET_{L1}_2D。
  • pipe = MTE3,搬运操作,包括从 UB 到 OUT,从 UB 到 L1。
  • pipe = V2,低优先级向量流水线。
  • pipe = F,Fixpipe 流水线。

以下章节描述的同步接口可以控制同一流水线内的运行顺序,也可以控制不同流水线之间的执行顺序。