华为麒麟 NPU 部署示例

您所在的位置:网站首页 华为mate30配置参数设置 华为麒麟 NPU 部署示例

华为麒麟 NPU 部署示例

2023-06-08 22:49| 来源: 网络整理| 查看: 265

为了支持华为 Kirin NPU,我们额外增加了(如上图标黄的区域):NNAdapter subgraph detection pass、NNAdapter subgraph op kernel 和 Paddle2NNAdapter converters。其中 NNAdapter subgraph detection pass 是后续自定义子图划分涉及的关键步骤;

NNAdapter subgraph detection pass:该 pass 的作用是遍历计算图中所有的算子节点,标记能够转成 NNAdapter+HiAI 算子的节点,然后通过图分割算法,将那些支持转为 HiAI IR 的、相邻的算子节点融合成一个subgraph(子图)算子节点(需要注意的是,这个阶段算子节点并没有真正转为 HiAI IR,更没有生成 HiAI 模型);

NNAdapter subgraph op kernel:根据 NNAdapter subgraph detection pass 的分割结果,在生成的算子 kernel 列表中,可能存在多个 subgraph 算子 kernel ;每个 subgraph 算子 kernel,都会将它所包裹的、能够转成 NNAdapter+HiAI 算子的 Paddle 算子,如上图右半部所示,依次调用对应的 converter,组网生成一个 NNAdapter+HiAI model,最终,调用 HiAI Runtime APIs 生成并执行华为 Kirin NPU 模型;

Paddle2NNAdapter converters:Paddle 算子/张量转 NNAdapter+HiAI 算子的桥接器,其目的是将 Paddle 算子、输入、输出张量最终转为 HiAI 组网 IR 和常量张量。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3