一种内存管理方法、装置、设备及介质制造方法及图纸

技术编号:32218790 阅读:19 留言:0更新日期:2022-02-09 17:24
本申请公开了一种内存管理方法、装置、设备及介质,包括:对异构加速计算系统的主机端的内存和各AI加速器设备的板载内存分别进行切片处理,得到相应的内存切片空间;从全部所述内存切片空间中确定出公共内存切片空间;对全部所述公共内存切片空间进行统一地址空间编址,得到相应的编址空间;在执行人工智能算法计算任务时,将人工智能算法模型部署于所述编址空间,以便各处理器访问所述编址空间中相应的公共内存切片空间,完成所述人工智能算法计算任务。能够突破AI异构加速设备间的内存物理隔离限制,提高异构加速计算系统的计算资源和内存资源利用效率。和内存资源利用效率。和内存资源利用效率。

【技术实现步骤摘要】
一种内存管理方法、装置、设备及介质


[0001]本申请涉及存储
,特别涉及一种内存管理方法、装置、设备及介质。

技术介绍

[0002]随着数据集规模的增加和模型的日趋复杂,AI(即Artificial Intelligence,人工智能)网络模型的计算成本越来越高,算力作为承载人工智能应用的平台和基础,其发展推动了整个人工智能系统的进步和快速演进,是人工智能最核心的要素之一。以解决人工智能应用计算系统的新型混合异构计算体系结构已成为国内外工业界和学术界共同角逐的热点。面向人工智能算法应用加速的异构加速器层出不穷,例如GPU(即graphics processing unit,图形处理器)、FPGA(即Field Programmable Gate Array,现场可编程逻辑门阵列))、TPU(即tensor processing unit,张量处理器)及各种定制化AI加速器等异构设备的发展为AI场景应用提供了多样性的底层硬件支持。
[0003]随着AI应用场景的复杂性提高,以及定制化AI异构加速器往往面向特定计算场景进行适配优化,人工智能应用对混合异构计算系统提出了需求。为了提高人工智能计算系统的能效,在单一服务器系统中同时集成具有不同计算特性的AI异构加速设备,在同一种复杂AI应用场景种采用不同的AI加速器分别负责不同的计算任务,通过构建高效的超异构计算系统,实现在同一个人工智能计算系统中不同AI异构加速设备之间的高效协同。虽然不同的AI加速器均提供了高容量的板载内存,但由于不同AI异构加速器设备之间存在物理隔离,无法实现不同架构AI异构计算架构之间的内存共享,导致人工智能算法模型在部署时往往受限于单个AI加速器设备的板载内存空间大小限制,目前的方式主要是采用模型并行的方式,将较大规模的AI算法模型在网络结构上进行拆分,通过将模型的不同模块分别部署在不同的AI加速器板载内存上,实现模型的训练与推理,然后采用模型并行流水执行的方式提高系统的运行效率,但是由于无法充分消除流水阶段之间的冒泡,仍会在一定程度上造成计算资源的浪费。

技术实现思路

[0004]有鉴于此,本申请的目的在于提供一种内存管理方法、装置、设备及介质,能够突破AI异构加速设备间的内存物理隔离限制,提高异构加速计算系统的计算资源和内存资源利用效率。
[0005]第一方面,本申请公开了一种内存管理方法,包括:
[0006]对异构加速计算系统的主机端的内存和各AI加速器设备的板载内存分别进行切片处理,得到相应的内存切片空间;
[0007]从全部所述内存切片空间中确定出公共内存切片空间;
[0008]对全部所述公共内存切片空间进行统一地址空间编址,得到相应的编址空间;
[0009]在执行人工智能算法计算任务时,将人工智能算法模型部署于所述编址空间,以便各处理器访问所述编址空间中相应的公共内存切片空间,完成所述人工智能算法计算任
务。
[0010]可选的,所述从全部所述内存切片空间中确定出公共内存切片空间,包括:
[0011]分别将所述主机端对应的全部内存切片空间、各所述AI加速器设备的板载内存对应的全部内存切片空间中的指定内存切片空间确定为私有内存切片空间;
[0012]将全部非指定内存切片空间确定为公共内存切片空间。
[0013]可选的,对异构加速计算系统中的各AI加速器设备的板载内存分别进行切片处理,包括:
[0014]对异构加速计算系统中的所有AI加速器设备进行遍历,对遍历到的各AI加速器设备的板载内存分别进行切片处理。
[0015]可选的,所述异构加速计算系统中,所有所述AI加速器设备基于PCIe接口挂载至所述主机端中。
[0016]可选的,所述异构加速计算系统中包括不同架构的所述AI加速器设备。
[0017]可选的,所述对异构加速计算系统的主机端内存和各AI加速器设备的板载内存分别进行切片处理,得到相应的内存切片空间,包括:
[0018]根据预设切片空间大小对异构加速计算系统的主机端内存和各AI加速器设备的板载内存分别进行切片处理,得到相应的内存切片空间。
[0019]可选的,还包括:
[0020]当检测到所述异构加速计算系统中挂载了新的AI加速器设备,则对所述新的AI加速器设备的板载内存进行切片处理,得到新增内存切片空间;
[0021]从所述新增内存切片空间内存中确定出新增公共内存切片空间;
[0022]基于所述新增公共内存切片空间更新所述编址空间,得到新的编址空间。
[0023]第二方面,本申请公开了一种内存管理装置,包括:
[0024]内存切片处理模块,用于对异构加速计算系统的主机端的内存和各AI加速器设备的板载内存分别进行切片处理,得到相应的内存切片空间;
[0025]公共内存切片空间确定模块,用于从全部所述内存切片空间中确定出公共内存切片空间;
[0026]统一编址模块,用于对全部所述公共内存切片空间进行统一地址空间编址,得到相应的编址空间;
[0027]智能算法计算任务执行模块,用于在执行人工智能算法计算任务时,将人工智能算法模型部署于所述编址空间,以便各处理器访问所述编址空间中相应的公共内存切片空间,完成所述人工智能算法计算任务。
[0028]第三方面,本申请公开了一种电子设备,包括:
[0029]存储器,用于保存计算机程序;
[0030]处理器,用于执行所述计算机程序,以实现前述的内存管理方法。
[0031]第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的内存管理方法。
[0032]可见,本申请先对异构加速计算系统的主机端的内存和各AI加速器设备的板载内存分别进行切片处理,得到相应的内存切片空间,之后从全部所述内存切片空间中确定出公共内存切片空间,然后对全部所述公共内存切片空间进行统一地址空间编址,得到相应
component interconnect express,一种高速串行计算机扩展总线标准)接口挂载至所述主机端中。
[0046]也即,本实施例中通过PCIe接口实现了所有AI加速器设备通过PCIe接口挂载在主机,实现了统一的标准互联。
[0047]步骤S12:从全部所述内存切片空间中确定出公共内存切片空间。
[0048]在具体的实施方式中,可以分别将所述主机端对应的全部内存切片空间、各所述AI加速器设备的板载内存对应的全部内存切片空间中的指定内存切片空间确定为私有内存切片空间;将全部非指定内存切片空间确定为公共内存切片空间。
[0049]其中,私有内存切片空间,只能被本地的处理器进行访问,也即,任一AI加速器设备上的板载内存的私有内存切片空间,只能由该AI加速器设备上的AI芯片访问,主机端中的私有内存切片空间只能被主机端的CPU(即central processing unit,中央处理器)访问。公共内存切本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种内存管理方法,其特征在于,包括:对异构加速计算系统的主机端的内存和各AI加速器设备的板载内存分别进行切片处理,得到相应的内存切片空间;从全部所述内存切片空间中确定出公共内存切片空间;对全部所述公共内存切片空间进行统一地址空间编址,得到相应的编址空间;在执行人工智能算法计算任务时,将人工智能算法模型部署于所述编址空间,以便各处理器访问所述编址空间中相应的公共内存切片空间,完成所述人工智能算法计算任务。2.根据权利要求1所述内存管理方法,其特征在于,所述从全部所述内存切片空间中确定出公共内存切片空间,包括:分别将所述主机端对应的全部内存切片空间、各所述AI加速器设备的板载内存对应的全部内存切片空间中的指定内存切片空间确定为私有内存切片空间;将全部非指定内存切片空间确定为公共内存切片空间。3.根据权利要求1所述的内存管理方法,其特征在于,对异构加速计算系统中的各AI加速器设备的板载内存分别进行切片处理,包括:对异构加速计算系统中的所有AI加速器设备进行遍历,对遍历到的各AI加速器设备的板载内存分别进行切片处理。4.根据权利要求1所述的内存管理方法,其特征在于,所述异构加速计算系统中,所有所述AI加速器设备基于PCIe接口挂载至所述主机端中。5.根据权利要求1所述的内存管理方法,其特征在于,所述异构加速计算系统中包括不同架构的所述AI加速器设备。6.根据权利要求1所述的内存管理办法,其特征在于,所述对异构加速计算系统的主机端内存和各AI加速器设备的板载内存分别进行...

【专利技术属性】
技术研发人员:郭振华赵雅倩李仁刚王丽范宝余
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

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

1