System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 内存访存的优化方法、装置、设备、介质及程序产品制造方法及图纸_技高网

内存访存的优化方法、装置、设备、介质及程序产品制造方法及图纸

技术编号:41408744 阅读:5 留言:0更新日期:2024-05-20 19:35
本申请实施例提供了一种内存访存的优化方法、装置、设备、介质及程序产品,涉及计算机领域,该方法包括:获取访存指令的执行信息;提取访存指令的执行信息中的物理地址;根据访存指令的物理地址构建数组元素,获得由数组元素构成的内存数组;根据数组元素所表征的物理页对应的内存片区的被访问总次数,计算得到物理页的访问热度,并确定访问热度大于热度阈值的目标物理页;将目标物理页对应的内存空间,迁移至高速内存中。本申请基于稠密形式的内存数组实现热物理页的识别,这样可以降低参与热度计算的数据的存储空间占用量以及参与热度计算的数据的复杂度,从而降低了处理器的开销,提高了系统的整体性能。

【技术实现步骤摘要】

本申请涉及计算机,特别是涉及一种内存访存的优化方法、装置、内存访存的优化设备、电子设备、机器可读介质及计算机程序产品。


技术介绍

1、在同时具有高速易失性内存和低速持久性内存的场景中,识别当前场景中访存操作对应的物理页,找出其中访存频次较为频繁的热物理页,并将热物理页迁移至高速易失性内存中,则可以更加发挥高速易失性内存的速度优势,从而提高混合内存场景的整体访存性能。

2、在目前,内核可以通过周期性的扫描页表来实现热物理页的识别和迁移,具体的,页表条目中通常有访问位(accessed bit,也称为引用位),当处理器通过访存操作访问某个物理页时,该访问位会被设置具体数值。处理器通过检查页表中的访问位是否被设置数值,从而可以确定一个物理页自上次扫描以来是否被再次访问过。在页表扫描的过程中,处理器会清除被访问的物理页的访问位,并根据它们的访问频次,将物理页移动到活跃或非活跃列表,从而实现了热物理页的区分。

3、但是,专利技术人经过研究发现,目前的方案中,页表扫描是资源密集型操作,使得处理器存在较大的开销,从而影响系统性能。另外,处理器可以通过提高扫描频率来提升对热物理页的识别性能,但这又会进一步增加处理器的开销。


技术实现思路

1、本申请实施例提供了一种内存访存的优化方法,以解决相关技术中处理器存在较大的开销,从而影响系统性能的问题。

2、相应的,本申请实施例还提供了一种内存访存的优化装置、内存访存的优化设备、电子设备、机器可读介质及计算机程序产品,用以保证上述方法的实现及应用。

3、为了解决上述问题,本申请实施例公开了一种内存访存的优化方法,所述方法包括:

4、获取访存指令的执行信息;

5、提取所述访存指令的执行信息中的物理地址;

6、根据所述访存指令的物理地址构建数组元素,获得由所述数组元素构成的内存数组,所述数组元素用于表征物理页,所述物理页包括所述物理地址;

7、根据所述内存数组中数组元素所表征的物理页对应的内存片区的被访问总次数,计算得到所述物理页的访问热度,并确定所述访问热度大于热度阈值的目标物理页;

8、将所述目标物理页对应的内存空间,迁移至高速内存中。

9、本申请实施例公开了一种内存访存的优化装置,所述装置包括:

10、信息获取模块,用于获取访存指令的执行信息;

11、提取模块,用于提取所述访存指令的执行信息中的物理地址;

12、构建模块,用于根据所述访存指令的物理地址构建数组元素,获得由所述数组元素构成的内存数组,所述数组元素用于表征物理页,所述物理页包括所述物理地址;

13、计算模块,用于根据所述内存数组,计算得到所述物理页的访问热度,并确定所述访问热度大于热度阈值的目标物理页;所述物理页的访问热度,与所述内存数组中数组元素所表征的物理页对应的内存片区的被访问总次数呈正相关关系;

14、迁移模块,用于将所述目标物理页对应的内存空间,迁移至高速内存中。

15、本申请实施例还公开了一种内存访存的优化设备,包括:

16、处理器和采样装置;

17、所述采样装置用于从所述处理器的指令流水线队列中获取访存指令的执行信息;

18、所述处理器用于:

19、获取由所述采样装置采样的所述访存指令的执行信息;

20、提取所述访存指令的执行信息中的物理地址;

21、根据所述访存指令的物理地址构建数组元素,获得由所述数组元素构成的内存数组,所述数组元素用于表征物理页,所述物理页包括所述物理地址;

22、根据所述内存数组中数组元素所表征的物理页对应的内存片区的被访问总次数,计算得到所述物理页的访问热度,并确定所述访问热度大于热度阈值的目标物理页;

23、将所述目标物理页对应的内存空间,迁移至高速内存中。

24、本申请实施例还公开了一种电子设备,包括:处理器;和存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如本申请实施例中一个或多个所述的方法。

25、本申请实施例还公开了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如本申请实施例中一个或多个所述的方法。

26、与相关技术相比,本申请实施例包括以下优点:

27、本申请实施例将采样的访存指令的物理地址构建为稠密形式的内存数组,并基于内存数组参与物理页的热度计算,实现热物理页的识别,这样可以降低参与热度计算的数据的存储空间占用量以及参与热度计算的数据的复杂度,从而降低了处理器的开销,提高了系统的整体性能。从而本申请实施例在低处理器开销的基础上,实现了采样、热物理页识别及迁移,系统性能整体较佳。

28、上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

本文档来自技高网...

【技术保护点】

1.一种内存访存的优化方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述获取访存指令的执行信息,包括:

3.根据权利要求2所述的方法,其特征在于,所述执行信息包括缓存命中信息和执行时长;所述采样装置用于在确定存在所述缓存命中信息表征命中三级缓存中的至少一级缓存的第一访存指令情况下,丢弃所述第一访存指令;以及在确定存在所述执行时长处于预设时长范围的第二访存指令情况下,丢弃所述第二访存指令。

4.根据权利要求1所述的方法,其特征在于,所述提取所述访存指令的执行信息中的物理地址,包括:

5.根据权利要求4所述的方法,其特征在于,在所述获取访存指令的执行信息之后,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,在所述获取访存指令的执行信息之后,所述方法还包括:

7.根据权利要求1所述的方法,其特征在于,所述根据所述访存指令的物理地址构建数组元素,获得由所述数组元素构成的内存数组,包括:

8.根据权利要求1所述的方法,其特征在于,所述根据所述内存数组中数组元素所表征的物理页对应的内存片区的被访问总次数,计算得到所述物理页的访问热度,包括:

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

10.根据权利要求1所述的方法,其特征在于,在所述确定所述访问热度大于热度阈值的目标物理页之后,所述方法还包括:

11.根据权利要求1所述的方法,其特征在于,所述将所述目标物理页对应的内存空间,迁移至高速内存中,包括:

12.根据权利要求11所述的方法,其特征在于,在检测到所述目标物理页对应的内存空间不处于所述高速内存的情况下,所述方法还包括:

13.一种内存访存的优化装置,其特征在于,包括:

14.一种内存访存的优化设备,其特征在于,包括:

15.一种电子设备,其特征在于,包括:

16.一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如权利要求1至12任一所述的方法。

17.一种计算机程序产品,其特征在于,所述计算机程序产品被处理器执行以实现如权利要求1至12任一所述的方法。

...

【技术特征摘要】

1.一种内存访存的优化方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述获取访存指令的执行信息,包括:

3.根据权利要求2所述的方法,其特征在于,所述执行信息包括缓存命中信息和执行时长;所述采样装置用于在确定存在所述缓存命中信息表征命中三级缓存中的至少一级缓存的第一访存指令情况下,丢弃所述第一访存指令;以及在确定存在所述执行时长处于预设时长范围的第二访存指令情况下,丢弃所述第二访存指令。

4.根据权利要求1所述的方法,其特征在于,所述提取所述访存指令的执行信息中的物理地址,包括:

5.根据权利要求4所述的方法,其特征在于,在所述获取访存指令的执行信息之后,所述方法还包括:

6.根据权利要求1所述的方法,其特征在于,在所述获取访存指令的执行信息之后,所述方法还包括:

7.根据权利要求1所述的方法,其特征在于,所述根据所述访存指令的物理地址构建数组元素,获得由所述数组元素构成的内存数组,包括:

8.根据权利要求1所述的方法,其特征在于,所述根据所述内存数组中数组元...

【专利技术属性】
技术研发人员:白铠豪张菁王宝林宋卓
申请(专利权)人:阿里云计算有限公司
类型:发明
国别省市:

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

1