一种人工智能芯片评测平台的制作方法

摘要: 本发明应用于人工智能领域,具体是一种人工智能芯片评测平台。背景技术:1、随着人工智能算法在安防、工业检测、智能交通、边缘计算、云边协同等场景中的广泛应用,ai芯...
一种人工智能芯片评测平台的制作方法

本发明应用于人工智能领域,具体是一种人工智能芯片评测平台。

背景技术:

1、随着人工智能算法在安防、工业检测、智能交通、边缘计算、云边协同等场景中的广泛应用,ai芯片作为承载模型推理、视频编解码和多媒体处理任务的核心硬件,其性能、稳定性及资源利用效率逐渐成为芯片选型和产品集成过程中的重要评价依据。现有ai芯片通常由不同厂商提供,各厂商在硬件架构、驱动接口、运行时环境、模型转换工具、推理框架适配方式以及系统资源采样接口等方面存在较大差异。因此,在对不同厂商ai芯片进行性能评测时,评测人员往往需要根据各厂商提供的私有sdk、接口文档和工具链分别编写测试程序,导致测试代码难以复用,评测工作量随芯片平台数量增加而显著增加。

2、在现有评测流程中,ai芯片性能测试通常包括测试数据准备、模型下载、模型转换、测试程序部署、推理任务启动、硬件编解码任务执行、运行状态监测、性能数据采集以及测试结果统计等多个环节。上述环节中相当一部分依赖人工操作,例如手动下载测试集和模型文件、根据芯片平台转换模型格式、手动配置运行环境、启动测试脚本、记录吞吐量和延时数据、整理cpu使用率、内存占用、npu/tpu使用率、温度、功耗等指标。由于流程较长且重复性较强,人工参与不仅降低评测效率,也容易引入配置不一致、统计口径不统一、结果记录遗漏等问题,影响测试结果的准确性、可追溯性和可比性。

3、此外,现有ai芯片评测通常以单机脚本或厂商工具为主,缺少统一的平台化管理能力。对于部署在边缘端的测试设备,评测方难以及时掌握设备在线状态、运行状态、测试进度及异常情况;对于测试任务,也缺少统一的远程下发、启停控制和执行结果回传机制。当需要同时评测多台设备或多个芯片平台时,测试人员需要在不同设备之间反复切换操作,进一步增加了管理成本。测试结果通常以本地文件、日志或人工表格形式保存,后续查询、对比、复核和归档较为不便,不利于形成标准化、规模化的芯片评测流程。

4、另一方面,ai芯片评测涉及算法推理性能、硬件解码性能、硬件编码性能以及系统资源占用等多类指标,不同厂商提供的统计方式和数据采样接口并不一致。若缺少统一的抽象接口和统一的指标采集方式,评测方难以在同一评价体系下对不同芯片进行横向比较,也难以保证测试程序、测试数据、运行环境和统计规则的一致性。因此,现有技术中仍需要一种能够降低重复开发工作量、减少人工参与、统一测试流程、集中管理边缘测试设备并统一保存和展示评测结果的ai芯片评测平台,以提高ai芯片性能评测的自动化程度、评测效率和结果可靠性。

技术实现思路

1、本发明所要解决的技术问题是针对现有技术的不足,提供一种人工智能芯片评测平台。

2、为解决上述技术问题,本发明的一种人工智能芯片评测平台,包括:

3、云端服务平台,用于接收用户经web管理界面发出的评测控制指令、管理测试数据与模型文件、下发测试任务、接收边缘端返回的测试结果并进行存储和展示;

4、至少一个边缘评测终端,用于从所述云端服务平台获取测试数据、模型文件、测试程序或脚本,完成部署,并根据所述测试任务对目标ai芯片执行评测;

5、消息通信模块,用于在所述云端服务平台与所述边缘评测终端之间通过mqtt协议进行注册、心跳、任务下发、状态监测及测试结果回传;

6、web交互模块,用于使所述web管理界面与所述云端服务平台之间通过http协议进行通信,以实现边缘终端监控、测试过程启停控制、测试数据管理及评测结果调阅;

7、统一评测接口模块,用于向不同芯片厂商提供统一抽象接口规范,使评测程序基于统一接口调用不同厂商实现的差异化底层能力,以对多个不同厂商的ai芯片执行统一评测;

8、其中,所述统一评测接口模块至少包括算法评测接口、硬件解码评测接口、硬件编码评测接口和底层数据采样接口;

9、所述云端服务平台与所述边缘评测终端协同工作,以实现测试数据和模型下载、评测程序部署、评测启动与停止控制、性能参数采集、测试结果回传及结果展示的自动化执行流程。

10、作为一种可能的实施方式,进一步的,云端服务平台包括:

11、任务管理单元,用于生成评测任务并向目标边缘评测终端下发;

12、文件管理单元,用于管理测试数据、模型文件、测试程序及脚本;

13、结果管理单元,用于接收、解析、存储并展示评测结果;

14、终端管理单元,用于根据边缘评测终端发送的注册信息和心跳信息监测终端在线状态及测试状态。

15、作为一种可能的实施方式,进一步的,边缘评测终端被配置为:在接收到云端服务平台经mqtt协议下发的测试指令后,自动下载对应测试资源,执行解压与部署,调用所述统一评测接口模块执行芯片评测,并将评测结果上传至云端服务平台。

16、作为一种可能的实施方式,进一步的,统一评测接口模块中的算法评测接口至少包括:模型加载接口、测试数据拷贝接口、预处理接口、前向计算接口、前向结果拷贝接口以及模型卸载接口;所述边缘评测终端通过调用所述算法评测接口,对目标ai芯片执行模型推理性能评测。

17、作为一种可能的实施方式,进一步的,统一评测接口模块中的硬件解码评测接口至少包括:解码器创建接口、解码器初始化接口、参数设置接口、视频流输入接口、解码帧回调接口以及解码器销毁接口;所述边缘评测终端通过调用所述硬件解码评测接口,对目标ai芯片的视频硬件解码能力进行评测。

18、作为一种可能的实施方式,进一步的,统一评测接口模块中的底层数据采样接口至少包括:cpu使用率采样接口tpu或npu使用率采样接口、内存使用量采样接口、dma数据采样接口以及温度采样接口;所述边缘评测终端在评测过程中周期性调用所述底层数据采样接口,以获得目标ai芯片运行过程中的系统性能参数。

19、作为一种可能的实施方式,进一步的,消息通信模块被配置为采用发布/订阅通信机制,所述边缘评测终端作为mqtt客户端向mqtt代理服务器发送注册消息和心跳消息,并订阅测试任务主题;所述云端服务平台作为mqtt客户端向所述mqtt代理服务器发布测试任务指令,并接收所述边缘评测终端发布的状态信息和测试结果信息。

20、一种人工智能芯片评测方法,包括:

21、s1、边缘评测终端向云端服务平台进行注册,并通过mqtt协议周期性发送心跳包,以使云端服务平台监测边缘评测终端的在线状态;

22、s2、用户通过web管理界面向云端服务平台发起评测操作,所述评测操作包括测试数据下发、模型文件下发、测试程序或脚本下发、测试启动和测试停止中的至少一种;

23、s3、云端服务平台根据所述评测操作生成测试指令,并通过mqtt协议将所述测试指令发送至边缘评测终端;

24、s4、边缘评测终端接收所述测试指令后,自动下载对应测试资源并完成解压部署;

25、s5、边缘评测终端基于统一评测接口调用目标ai芯片对应厂商实现的底层能力,对目标ai芯片执行算法评测、硬件解码评测、硬件编码评测和底层数据采样中的至少一种;

26、s6、边缘评测终端将评测结果返回至云端服务平台;

27、s7、云端服务平台对所述评测结果进行存储,并通过 web 管理界面展示所述评测结果。

28、作为一种可能的实施方式,进一步的,步骤s5中,执行算法评测时包括:模型加载、数据图像拷贝、预处理、前向计算、前向结果拷贝和模型卸载。

29、作为一种可能的实施方式,进一步的,步骤s5中,执行硬件编码评测时包括:创建编码器、初始化编码器、设置编码参数、输入yuv图像、接收编码数据回调及销毁编码器。

30、本发明采用以上技术方案,具有以下有益效果:

31、提高ai芯片评测效率:将测试数据和模型下载、测试程序部署、测试任务启动、性能数据采集、测试结果回传及结果展示等环节进行平台化和自动化处理,减少人工在各个测试步骤中的重复操作,使评测人员能够通过统一的web管理界面完成测试流程控制,从而显著提高ai芯片性能评测效率。

32、减少重复开发工作量:通过设置统一的抽象测试接口,将算法推理、硬件解码、硬件编码以及底层资源采样等测试流程进行标准化封装。评测方无需针对每个芯片厂商分别编写完整测试代码,只需基于统一接口编写通用测试程序,芯片厂商根据自身平台适配差异化实现即可,从而降低多芯片平台接入和维护成本。

33、提升测试结果的一致性和可比性:由于本发明能够统一测试流程、测试指标和数据采集方式,使不同ai芯片在相同测试数据、相同评测逻辑和相同统计口径下完成测试,避免因人工操作差异、厂商工具差异或统计方式差异导致评测结果不一致的问题,有利于实现不同芯片之间的横向比较。

34、实现边缘测试设备的集中管理:通过云端平台与边缘端设备之间的通信机制,实现边缘盒子的注册、心跳上报、状态监测、测试指令下发和测试结果上传。评测人员能够在平台侧实时查看边缘设备在线状态和测试执行状态,便于对多台设备、多种芯片平台进行集中管理。