开发者
资源
[object Object]

[object Object][object Object]undefined
[object Object]
  • 接口功能:基于一系列计算得到MHC架构中hidden层的HresH^{res}HpostH^{post}投影矩阵以及Attention或MLP层的输入矩阵hinh^{in}

  • 计算公式:

    xl=RMSNorm(xl)Hlpre=αlpre(xlφlpre)+blpreHlpost=αlpost(xlφlpost)+blpostHlres=αlres(xlφlres)+blresHlpre=σ(Hlpre)Hlpost=2σ(Hlpost)hin=xlHlpre\begin{aligned} \vec{x^{'}_{l}} &=RMSNorm(\vec{x_{l}})\\ H^{pre}_l &= \alpha^{pre}_{l} ·(\vec{x^{'}_{l}}\varphi^{pre}_{l}) + b^{pre}_{l}\\ H^{post}_l &= \alpha^{post}_{l} ·(\vec{x^{'}_{l}}\varphi^{post}_{l}) + b^{post}_{l}\\ H^{res}_l &= \alpha^{res}_{l} ·(\vec{x^{'}_{l}}\varphi^{res}_{l}) + b^{res}_{l}\\ H^{pre}_l &= \sigma (H^{pre}_{l})\\ H^{post}_l &= 2\sigma (H^{post}_{l})\\ h_{in} &=\vec{x_{l}}H^{pre}_l \end{aligned}
[object Object]

每个算子分为,必须先调用"aclnnMhcPreGetWorkspaceSize"接口获取计算所需workspace大小以及包含了算子计算流程的执行器,再调用"aclnnMhcPre"接口执行计算。

[object Object]
[object Object]
[object Object]
  • 参数说明:

    [object Object]
  • 返回值

    aclnnStatus:返回状态码,具体参见

    第一段接口完成入参校验,出现以下场景时报错:

    [object Object]
[object Object]
  • 参数说明

    [object Object]
  • 返回值

    aclnnStatus:返回状态码,具体参见

[object Object]
  • 确定性计算:

    • aclnnMhcPre默认确定性实现。
  • 规格约束:

    • n目前支持4、6、8。
    • D支持1~16384范围以内,需满足D为16对齐。
[object Object]

示例代码如下,仅供参考,具体编译和执行过程请参考

[object Object]