System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及深度学习编译,具体涉及内存复用优化方法、装置、设备、存储介质及程序产品。
技术介绍
1、在深度学习编译技术中,多级中间表示(mlir,multi-level intermediaterepresentation)是一种构建可重用和扩展深度学习编译器基础设施的新方法。mlir旨在解决编译软件统一化的问题,从而改进异构硬件的编译过程,显著降低构建特定领域深度学习编译器的成本,并可帮助将已有的深度学习编译器连接在一起。在mlir中,深度学习中的张量一般被表示为memref(内存块),内存块占用的内存空间大小,直接影响着程序运行时的内存空间使用量,所以优化内存块的内存占用至关重要。对内存块进行内存分配时,虽然相关技术可以根据相关技术对部分内存空间进行复用,但是,由于相关技术存在的技术局限,仍存在内存资源浪费问题。
技术实现思路
1、有鉴于此,本专利技术提供了一种内存复用优化方法、装置、设备、存储介质及程序产品,以解决相关技术中对内存块进行内存分配的方案仍然存在内存资源浪费问题。
2、第一方面,本专利技术提供了一种内存复用优化方法,该方法包括:
3、获取目标内存空间下的目标内存块和子内存块,目标内存块为基于内存分配操作产生的内存块,子内存块为基于对目标内存块进行复用操作产生的内存块;
4、确定目标内存块的活性范围和子内存块的活性范围,活性范围表示内存块在程序块中的使用范围;
5、根据目标内存块的活性范围和子内存块的活性范围,构建目
6、基于干涉关系,对目标内存块和子内存块进行内存分配。
7、第二方面,本专利技术提供了一种内存复用优化装置,该装置包括:
8、获取模块,用于获取目标内存空间下的目标内存块和子内存块,目标内存块为基于内存分配操作产生的内存块,子内存块为基于对目标内存块进行复用操作产生的内存块;
9、计算模块,用于确定目标内存块的活性范围和子内存块的活性范围,活性范围表示内存块在程序块中的使用范围;
10、构建模块,用于根据目标内存块的活性范围和子内存块的活性范围,构建目标内存块和子内存块中的不同内存块之间的干涉关系,干涉关系表示不同内存块的活性范围存在重叠;
11、分配模块,用于基于干涉关系,对目标内存块和子内存块进行内存分配。
12、第三方面,本专利技术提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的内存复用优化方法。
13、第四方面,本专利技术提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的内存复用优化方法。
14、第五方面,本专利技术提供了一种计算机程序产品,包括计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的内存复用优化方法。
15、与相关技术相比,本专利技术创新地利用子内存块和目标内存块的活性范围构建任意两个不同的内存块之间的干涉关系,以根据干涉关系对内存块进行内存分配,由于本专利技术明确地区分了所有内存块中的子内存块的活性范围和非子内存块的活性范围,从而使干涉关系的判断更为精准,进而在为内存块进行内存分配时能够更大程度地进行内存复用,提高了内存空间的利用率。
本文档来自技高网...【技术保护点】
1.一种内存复用优化方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述确定所述目标内存块的活性范围和所述子内存块的活性范围,包括:
3.根据权利要求1所述的方法,其特征在于,所述确定所述目标内存块的活性范围和所述子内存块的活性范围,包括:
4.根据权利要求1至3中任一项所述的方法,其特征在于,多个所述目标内存块和至少一个所述子内存块组成内存块集合,所述根据所述目标内存块的活性范围和所述子内存块的活性范围,构建所述目标内存块和所述子内存块中的不同内存块之间的干涉关系,包括:
5.根据权利要求4所述的方法,其特征在于,所述构建干涉图之后,所述方法还包括对所述干涉图进行更新;
6.根据权利要求1至3中任一项所述的方法,其特征在于,多个所述目标内存块包括父内存块和独立内存块,所述子内存块为基于对所述父内存块进行复用操作产生的内存块;所述基于所述干涉关系,对所述目标内存块和所述子内存块进行内存分配,包括:
7.根据权利要求6所述的方法,其特征在于,所述依次为所述父内存块及其子内存块分配内存
8.根据权利要求7所述的方法,其特征在于,所述通过内存分配操作,为所述父内存块分配内存空间,包括:
9.根据权利要求7所述的方法,其特征在于,所述依次为所述父内存块及其子内存块分配内存空间之前,所述方法还包括:
10.根据权利要求9所述的方法,其特征在于,所述对所述子内存块进行整数范围分析,包括:
11.根据权利要求6所述的方法,其特征在于,所述通过复用操作,令所述独立内存块复用为所述父内存块分配的内存空间,包括:
12.根据权利要求1所述的方法,其特征在于,所述获取目标内存空间下的目标内存块和子内存块,包括:
13.根据权利要求1所述的方法,其特征在于,
14.一种内存复用优化装置,其特征在于,所述装置包括:
15.一种计算机设备,其特征在于,包括:
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至11中任一项所述的内存复用优化方法。
17.一种计算机程序产品,其特征在于,包括计算机指令,所述计算机指令用于使计算机执行权利要求1至13中任一项所述的内存复用优化方法。
...【技术特征摘要】
1.一种内存复用优化方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述确定所述目标内存块的活性范围和所述子内存块的活性范围,包括:
3.根据权利要求1所述的方法,其特征在于,所述确定所述目标内存块的活性范围和所述子内存块的活性范围,包括:
4.根据权利要求1至3中任一项所述的方法,其特征在于,多个所述目标内存块和至少一个所述子内存块组成内存块集合,所述根据所述目标内存块的活性范围和所述子内存块的活性范围,构建所述目标内存块和所述子内存块中的不同内存块之间的干涉关系,包括:
5.根据权利要求4所述的方法,其特征在于,所述构建干涉图之后,所述方法还包括对所述干涉图进行更新;
6.根据权利要求1至3中任一项所述的方法,其特征在于,多个所述目标内存块包括父内存块和独立内存块,所述子内存块为基于对所述父内存块进行复用操作产生的内存块;所述基于所述干涉关系,对所述目标内存块和所述子内存块进行内存分配,包括:
7.根据权利要求6所述的方法,其特征在于,所述依次为所述父内存块及其子内存块分配内存空间,包括:
8.根据权利要求7所述的...
【专利技术属性】
技术研发人员:请求不公布姓名,请求不公布姓名,请求不公布姓名,请求不公布姓名,请求不公布姓名,请求不公布姓名,
申请(专利权)人:寒武纪昆山信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。