System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 人工智能框架的运行时统一接口、服务器及调用方法技术_技高网

人工智能框架的运行时统一接口、服务器及调用方法技术

技术编号:40577660 阅读:7 留言:0更新日期:2024-03-06 17:19
本发明专利技术涉及人工智能框架技术领域,公开了一种人工智能框架的运行时统一接口、服务器及调用方法,该运行时统一接口包括对接框架接口和运行时基础接口;运行时基础接口,用于与板卡设备的运行时接口连接;对接框架接口,用于向人工智能框架表明运行时统一接口包括的接口,并在接收到来自于人工智能框架的调用请求时,用于通过运行时基础接口,调用板卡设备的运行时接口。本发明专利技术通过设置运行时统一接口,能够减少板卡设备与人工智能框架的对接时长,提升用户的使用体验。

【技术实现步骤摘要】

本专利技术涉及人工智能框架,具体涉及一种人工智能框架的运行时统一接口、服务器及调用方法


技术介绍

1、人工智能(artificial intelligence,ai)框架是用于开发和部署人工智能模型的软件工具包,ai框架提供了一系列的库、api和工具,能够帮助开发者在人工智能项目中进行数据处理、模型构建、训练和推理等任务。常用的ai框架有开源机器学习框架(tensorflow)、开源深度学习框架(pytorch)和飞桨(paddlepaddle)等,ai框架通常与加速卡(也称板卡设备)进行对接实现任务加速,以提高计算效率和性能。

2、但是,某一类加速卡的运行时接口与ai框架中的运行时接口可能并不适配,受限于加速卡厂商的人力投入和成本,目前加速卡在与不同类型的ai框架对接时,需要根据ai框架的类型进行适配,以将加速卡的运行时接口接入ai框架。在用户更换ai框架的类型之后,花费在加速卡与ai框架对接的时间较长,影响用户的使用体验。

3、具体地,如图1所示,板卡商或用户根据接口功能将板卡设备的运行时接口100接入到自定义运行时接口200之后,paddlppaddle框架300通过调用自定义运行时接口200即可完成与板卡设备的逻辑交互,进而完成对板卡设备的使用。但是,paddlepaddle框架定义的运行时接口只适用于paddlepaddle框架,并不适用于其他类型的ai框架,并不能很好的解决加速卡与ai框架对接的时间较长的问题。


技术实现思路

1、有鉴于此,本专利技术提供了一种人工智能框架的运行时统一接口、服务器及调用方法,以解决加速卡与ai框架对接的时间较长,影响用户的使用体验的问题。

2、第一方面,本专利技术提供了一种人工智能框架的运行时统一接口,运行时统一接口包括对接框架接口和运行时基础接口;运行时基础接口,用于与板卡设备的运行时接口连接;对接框架接口,用于向人工智能框架表明运行时统一接口包括的接口,并在接收到来自于人工智能框架的调用请求时,用于通过运行时基础接口,调用板卡设备的运行时接口。

3、本专利技术提供的ai框架的运行时统一接口,在将运行时基础接口与板卡设备的运行时接口连接之后,若对接框架接口接收到来自于ai框架的调用请求,对接框架接口通过调用运行时基础接口,即可调用板卡设备的运行时接口。本实施例通过设置ai框架的运行时统一接口,用户只需要简单的按照接口要求将板卡设备的运行时接口接入运行时统一接口,即可完成板卡设备与各类ai框架的对接,使ai框架通过板卡设备完成相应的数据处理过程,减少了板卡设备与ai框架的对接时长,提升了用户的使用体验。

4、在一种可选的实施方式中,与运行时基础接口连接的板卡设备的数量为多个,多个板卡设备中的每个板卡设备配置有设备号,运行时基础接口包括设备管理模块;设备管理模块,用于确定目标板卡设备的设备号,其中,目标板卡设备为多个板卡设备中执行调用请求的板卡设备。

5、在本实施例中,通过设置设备管理模块,可以对接入运行时基础接口的板卡设备进行管理,方便用户查看接入的板卡设备的相关信息。

6、在一种可选的实施方式中,运行时基础接口还包括内存管理模块;内存管理模块,用于分配目标板卡设备的内存或分配人工智能框架的内存,以将数据从人工智能框架同步传输或异步传输到目标板卡设备,或将数据从目标板卡设备同步传输或异步传输到人工智能框架,其中,人工智能框架的内存为人工智能框架所在的服务器的内存;内存管理模块,还用于在将数据从人工智能框架同步传输或异步传输到目标板卡设备之后,释放目标板卡设备的内存,以及用于在将数据从目标板卡设备同步传输或异步传输到人工智能框架之后,释放人工智能框架的内存。

7、在本实施例中,通过设置内存管理模块,可以更方便快捷的管理板卡设备端的内存或ai框架所在服务器的内存。同步传输可以确保数据在发送和接收方之间以可控的速度进行传输,减少数据丢失和错误,提升数据传输稳定性,异步传输可以容忍一定的传输延迟和抖动,具有较高的容错性和灵活性。

8、在一种可选的实施方式中,运行时基础接口还包括第一流管理模块;第一流管理模块,用于创建流,其中,创建的流用于存储来自于人工智能框架的多个操作任务;第一流管理模块,还用于向板卡设备发送创建的流,使板卡设备按顺序处理同一流上的操作任务,并行处理不同流上的操作任务。

9、在本实施例中,ai框架下发到板卡设备的操作任务基于流完成,能够实现对操作任务的时序控制。

10、在一种可选的实施方式中,运行时基础接口还包括事件管理模块;事件管理模块,用于在创建的流上创建事件,其中,创建的事件用于确定流上的多个操作任务是否执行完成;事件管理模块,还用于在记录的事件被执行之后,触发第一流管理模块同步流,以指示事件所在流上的在事件之前的操作任务已经全部执行完成;第一流管理模块,用于在事件被执行之后同步流,并用于在创建的流上的所有操作任务执行完成之后销毁流,以释放创建的流所占用的服务器的资源。

11、在本实施例中,通过设置事件管理模块,能够更方便的了解流上操作任务的执行情况。

12、在一种可选的实施方式中,运行时基础接口还包括版本管理模块;版本管理模块,用于获取板卡设备的运行时版本号和驱动版本号。

13、在本实施例中,通过设置版本管理模块获取板卡设备的运行时版本号和驱动版本号,能够方便ai框架查看当前连接的板卡设备的运行时接口的版本信息。

14、在一种可选的实施方式中,运行时统一接口还包括扩展接口,扩展接口包括第二流管理模块,第二流管理模块配置有预先创建的多个流;第二流管理模块,用于在接收到来自于人工智能框架的创建流的指示信息之后,向人工智能框架发送目标流,其中,目标流为多个流中的一个或多个;第二流管理模块,还用于获取板卡设备默认的流,用于获取板卡设备当前使用的流,以及用于设置或切换板卡设备当前使用的流,以便于人工智能框架调用板卡设备。

15、在本实施例中,在ai框架从后端(运行时统一接口)申请流时,运行时统一接口直接从多个流中取出预先申请好的流给ai框架,节省了频繁创建流和销毁流的时间。

16、在一种可选的实施方式中,扩展接口还包括缓存模块,缓存模块的缓存池中配置有预申请的内存;缓存模块,用于在人工智能框架申请内存时,向人工智能框架发送目标内存,其中,目标内存为缓存池中的内存;缓存模块,还用于在人工智能框架释放目标内存时,将目标内存标记为未使用状态,并将目标内存重新保存在缓存池中,以及用于在目标内存被使用之后释放目标内存。

17、在本实施例中,通过缓存机制,能够避免内存从板卡设备端频繁的申请和释放。

18、在一种可选的实施方式中,缓存模块,还用于通过事件记录目标内存使用的时间节点,以在目标内存被使用之后释放目标内存。

19、在本实施例中,ai框架在释放内存时只需要直接调用内存释放接口即可,通过缓存模块保证内存在被使用后才被释放,延缓释放时间。

本文档来自技高网...

【技术保护点】

1.一种人工智能框架的运行时统一接口,其特征在于,运行时统一接口包括对接框架接口和运行时基础接口;

2.根据权利要求1所述的运行时统一接口,其特征在于,与所述运行时基础接口连接的所述板卡设备的数量为多个,多个所述板卡设备中的每个所述板卡设备配置有设备号,所述运行时基础接口包括设备管理模块;

3.根据权利要求2所述的运行时统一接口,其特征在于,所述运行时基础接口还包括内存管理模块;

4.根据权利要求1至3中任一项所述的运行时统一接口,其特征在于,所述运行时基础接口还包括第一流管理模块;

5.根据权利要求4所述的运行时统一接口,其特征在于,所述运行时基础接口还包括事件管理模块;

6.根据权利要求1至3中任一项所述的运行时统一接口,其特征在于,所述运行时基础接口还包括版本管理模块;

7.根据权利要求1至3中任一项所述的运行时统一接口,其特征在于,所述运行时统一接口还包括扩展接口,所述扩展接口包括第二流管理模块,所述第二流管理模块配置有预先创建的多个流;

8.根据权利要求7所述的运行时统一接口,其特征在于,所述扩展接口还包括缓存模块,所述缓存模块的缓存池中配置有预申请的内存;

9.根据权利要求8所述的运行时统一接口,其特征在于,

10.根据权利要求1至3中任一项所述的运行时统一接口,其特征在于,所述运行时统一接口还包括调试接口,所述调试接口包括日志模块;

11.根据权利要求10所述的运行时统一接口,其特征在于,所述调试接口还包括错误检查模块;

12.根据权利要求10所述的运行时统一接口,其特征在于,所述调试接口还包括跟踪调试模块;

13.一种服务器,其特征在于,服务器包括如权利要求1至12中任一项所述的运行时统一接口。

14.一种板卡设备的运行时接口的调用方法,其特征在于,应用于如权利要求1至12中任一项所述的运行时统一接口的对接框架接口,所述运行时统一接口包括所述对接框架接口和运行时基础接口,所述运行时基础接口连接板卡设备的运行时接口,所述方法包括:

15.根据权利要求14所述的方法,其特征在于,所述方法还包括:

...

【技术特征摘要】

1.一种人工智能框架的运行时统一接口,其特征在于,运行时统一接口包括对接框架接口和运行时基础接口;

2.根据权利要求1所述的运行时统一接口,其特征在于,与所述运行时基础接口连接的所述板卡设备的数量为多个,多个所述板卡设备中的每个所述板卡设备配置有设备号,所述运行时基础接口包括设备管理模块;

3.根据权利要求2所述的运行时统一接口,其特征在于,所述运行时基础接口还包括内存管理模块;

4.根据权利要求1至3中任一项所述的运行时统一接口,其特征在于,所述运行时基础接口还包括第一流管理模块;

5.根据权利要求4所述的运行时统一接口,其特征在于,所述运行时基础接口还包括事件管理模块;

6.根据权利要求1至3中任一项所述的运行时统一接口,其特征在于,所述运行时基础接口还包括版本管理模块;

7.根据权利要求1至3中任一项所述的运行时统一接口,其特征在于,所述运行时统一接口还包括扩展接口,所述扩展接口包括第二流管理模块,所述第二流管理模块配置有预先创建的多个流;

8.根据...

【专利技术属性】
技术研发人员:刘辉
申请(专利权)人:山东云海国创云计算装备产业创新中心有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1