文档首页 > > 产品介绍> 昇腾AI软件栈描述> 流程编排器(Matrix)

流程编排器(Matrix)

分享
更新时间:2020/05/14 GMT+08:00

功能简介

昇腾AI处理器对网络执行层次进行划分,将特定功能的执行操作看做基本执行单位——计算引擎(Engine)。每个计算引擎在流程编排过程中对数据完成基本操作功能,如对图片进行分类处理、输入图片预处理及输出图片数据的标识等。计算引擎由开发者进行自定义来完成所需要的具体功能。

通过流程编排器的统一调用,整个深度神经网络应用一般包括四个引擎:数据引擎,预处理引擎,模型推理引擎以及后处理引擎。

  • 数据引擎主要准备神经网络需要的数据集(如MNIST数据集)和进行相应数据的处理(如图片过滤等),作为后续计算引擎的数据来源。
  • 一般输入媒体数据需要进行格式预处理来满足昇腾AI处理器的计算要求,而预处理引擎主要进行媒体数据的预处理,完成图像和视频编解码以及格式转换等操作,并且数字视觉预处理各功能模块都需要统一通过流程编排器进行调用。
  • 数据流进行神经网络推理时,需要用到模型推理引擎。模型推理引擎主要利用加载好的模型和输入的数据流完成神经网络的前向计算。
  • 在模型推理引擎输出结果后,后处理引擎再对模型推理引擎输出的数据进行后续处理,如图像识别的加框和加标识等处理操作。
图1 计算引擎流程图

图1表示一种典型的计算引擎流程图。计算引擎流程图中每一个具体数据处理的节点就是计算引擎,数据流按照编排好的路径流过每个引擎时,分别进行相关处理和计算,最终输出需要的结果,而整个流程图最后输出的结果就是对应神经网络计算输出的结果。相邻两个计算引擎节点通过计算引擎流程图中的配置文件建立连接关系,节点间实际数据流会根据具体网络模型按节点连接方式进行流动。在配置完成节点属性后,向计算引擎流程图的开始节点灌入数据就会启动整个计算引擎的运行流程。

流程编排器,运行于L1芯片使能层之上,L3应用使能层之下,为多种操作系统(Linux、Android等)提供统一的标准化中间接口,并且负责完成整个计算引擎流程图的建立、销毁和计算资源的回收。

在计算引擎流程图建立过程中,流程编排器根据计算引擎的配置文件完成计算引擎流程图的建立。在执行之前,流程编排器提供输入数据。如果输入数据是视频图像等格式未能满足处理需要的形式,则可以通过相应的编程接口来调用数字视觉预处理模块进行数据预处理。如果数据满足处理要求,则直接通过接口调用离线模型执行器来进行推理计算。在执行过程中,流程编排器具有多节点调度和多进程管理功能,负责计算进程在设备端的运行,并守护计算进程,以及进行相关执行信息的统计汇总等。在模型执行结束后,为主机上的应用提供获取输出结果的功能。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问