技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种多平台算法推理调度框架方法与流程  >  正文

一种多平台算法推理调度框架方法与流程

  • 国知局
  • 2024-07-31 22:38:14

本发明涉及人工智能领域,具体而言,涉及一种多平台算法推理调度框架方法。

背景技术:

1、随着人工智能算法的蓬勃发展,各种平台(例如x86cuda异构平台、英伟达jetson平台、算能arm平台等)下的算法落地需求爆炸性增长,而对算法的快速移植、集成、优化、部署等需求显得越来越重要,如何加速算法落地将决定业务效率。

2、通常在一种平台下移植算法,需要将对应平台下的算法模型文件经过模型转化到对应平台下的目标模型文件,有时为了加快模型推理时间,还需要额外进行模型量化。拿到目标平台下格式的算法模型文件后,根据开发文档需将模型在对应平台上调度起来,具体实现包括前处理,推理,后处理等过程。通常在前处理过程中,利用该平台下的图像预处理加速单元进行加速,在推理过程中,利用拼batch,多batch方案加速推理,后处理过程中会按照异步处理方案,进行最大程度的并发处理。但是现有技术方案在一种平台移植完成后,需要在另外一种平台上再开发一套对应平台上的移植方案。当移植方案需要在多种平台上应用时,大大增加了开发难度,增加了移植迁移的成本,降低了开发效率。

3、如图1所示为一种现有的移植方案,该移植方案首先准备目标平台的模型文件,可选fp32、fp16、int8等格式模型,供后续加载模型使用。然后在算法调度中主程入口处起任务线程,包括前处理线程、拼batch线程、推理线程、后处理线程。在前处理线程中通常利用专用目标平台中的图像加速单元加速,推理线程调用专用目标平台推理接口。但是,图1所示的该移植方案针对于不同目标平台需要移植多次,并不能在一套统一框架下开发,导致开发效率低,算法移植成本高。

技术实现思路

1、本发明提供一种多平台算法推理调度框架方法,用以解决上述现有技术存在的技术问题。

2、为达到上述目的,本发明提供了一种多平台算法推理调度框架方法,其包括:

3、s1:在各平台中分别部署一子算法调度模块,并在各子算法调度模块中分别部署模型加载单元、前处理单元、必要前处理单元、算法推理单元以及后处理单元;

4、s2:部署一manager模块,用于接收上游任务帧队列;

5、s3:manager模块从上游任务帧队列中读取数据帧、解析输入配置;

6、s4:根据解析的输入配置判断对应的平台,并将初步处理的数据帧分发给对应平台的子算法调度模块;

7、s5:各平台的子算法调度模块收到上游分发的数据帧后依次经由加载单元、前处理单元、必要前处理单元、算法推理单元以及后处理单元进行模型加载、前处理、必要前处理、算法推理以及后处理。

8、在本发明的一实施例中,平台包括x86cuda异构平台、jetson平台以及算能arm平台。

9、在本发明的一实施例中,各子算法调度模中的前处理单元组合为一公共前处理单元,以及/或各子算法调度模中的后处理单元组合为一公共后处理单元。

10、在本发明的一实施例中,各平台内部均包含图像处理加速单元。

11、在本发明的一实施例中,算法推理单元为tpu或npu。

12、在本发明的一实施例中,后处理模块对数据进行nms操作以及/或可视化操作。

13、本发明提供的多平台算法推理调度框架方法在一套框架内集成多种常见平台,并在各平台内部部署子算法调度模块,各子算法调度模块内部实现了必要的数据流转过程,体现了算法处理的共性。在大规模算法移植场景下,只需要在本框架下利用框架提供的公共前处理和后处理接口,只需简单开发几十行特定算法的预处理和后处理,便可快速完成移植工作。

14、与专用平台下的移植方案相比,本发明提出的多平台算法推理调度框架方法克服了现有技术方案不能迁移的问题,加快了各平台大规模算法移植的速度,提升了开发效率。并且在性能上与现有技术相比,依然利用了各平台加速特性,推理效率不低于现有技术。高效满足了多平台大规模算法移植的需求。本发明实现简单,效果良好,并且达到了应用的要求。

技术特征:

1.一种多平台算法推理调度框架方法,其特征在于,包括:

2.根据权利要求1所述的多平台算法推理调度框架方法,其特征在于,平台包括x86cuda异构平台、jetson平台以及算能arm平台。

3.根据权利要求1所述的多平台算法推理调度框架方法,其特征在于,各子算法调度模中的前处理单元组合为一公共前处理单元,以及/或各子算法调度模中的后处理单元组合为一公共后处理单元。

4.根据权利要求1所述的多平台算法推理调度框架方法,其特征在于,各平台内部均包含图像处理加速单元。

5.根据权利要求1所述的多平台算法推理调度框架方法,其特征在于,算法推理单元为tpu或npu。

6.根据权利要求1所述的多平台算法推理调度框架方法,其特征在于,后处理模块对数据进行nms操作以及/或可视化操作。

技术总结一种多平台算法推理调度框架方法,其包括:S1:在各平台中分别部署一子算法调度模块,并在各子算法调度模块中分别部署模型加载单元、前处理单元、必要前处理单元、算法推理单元以及后处理单元;S2:部署一manager模块,用于接收上游任务帧队列;S3:manager模块从上游任务帧队列中读取数据帧、解析输入配置;S4:根据解析的输入配置判断对应的平台,并将初步处理的数据帧分发给对应平台的子算法调度模块;S5:各平台的子算法调度模块收到上游分发的数据帧后依次经由加载单元、前处理单元、必要前处理单元、算法推理单元以及后处理单元进行模型加载、前处理、必要前处理、算法推理以及后处理。技术研发人员:杨耀宗,马丽娜,罗鑫受保护的技术使用者:宜昌中科通量科技有限公司技术研发日:技术公布日:2024/7/25

本文地址:https://www.jishuxx.com/zhuanli/20240730/193939.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。