一种页表访问信息的处理方法、装置、存储介质及设备与流程

摘要: 本申请涉及计算机,尤其涉及一种页表访问信息的处理方法、装置、存储介质及设备。背景技术:1、在现代处理器架构中,内存管理单元(memorymanagementun...
一种页表访问信息的处理方法、装置、存储介质及设备与流程

本申请涉及计算机,尤其涉及一种页表访问信息的处理方法、装置、存储介质及设备。

背景技术:

1、在现代处理器架构中,内存管理单元(memory management unit,mmu)负责完成内存访问的虚拟地址到物理地址的转换。mmu包含多级转换后备缓冲器(translationlookaside buffer,tlb)。以两级tlb为例,一级转换后备缓冲器(l1 tlb)位于处理器核心附近,提供最快的地址转换服务;二级转换后备缓冲器(l2tlb)容量更大,作为一级转换后备缓冲器(l1 tlb)的后备。

2、处理器发起内存访问时,mmu需要依靠页表项(page table entry,pte)完成虚拟地址向物理地址的转换,页表项保存虚拟页与物理页之间的映射关系。在mmu管理的页表项中通常包含一个访问位(access bit,简称a位),a位用于标识该页表项对应的物理页是否被访问过。在页面置换、内存冷热迁移、工作集检测等场景中,需要依据页面真实的访问信息,开展页面冷热判断与内存调度决策,因此需要获取页面量化的访问统计数据。

3、目前,相关统计处理一般完全在软件侧实现,或者仅由硬件完成基础计数,聚合处理仍交由软件完成。然而,这两种处理方式均需要硬件持续向软件上报原始访问事件,上报频次随页面实际访问行为变化产生大量上报事件,并且软件还需对海量上报数据执行聚合运算,这会消耗大量的系统资源和总线带宽。

技术实现思路

1、有鉴于此,本申请提供了一种页表访问信息的处理方法、装置、存储介质及设备,主要目的在于解决现有技术在执行页表访问信息统计时,由硬件向软件频繁上报原始访问事件、软件聚合海量数据所带来的系统资源以及总线带宽消耗较大的技术问题。

2、第一方面,本申请提供了一种页表访问信息的处理方法,包括:

3、通过第一缓存单元对目标虚拟页的访问事件进行计数,在第一缓存单元检测到目标虚拟页在第一缓存单元内的访问次数满足第一发送条件的情况下,基于访问次数生成目标虚拟页的计数片段信息。

4、将计数片段信息发送至第一缓存单元连接的第二缓存单元,第一缓存单元和第二缓存单元是内存管理单元中的缓存单元。

5、通过第二缓存单元,基于计数片段信息中包含的目标虚拟页的标识信息识别计数片段信息对应的虚拟页,对属于同一目标虚拟页的多条计数片段信息进行聚合统计,得到目标虚拟页的目标访问次数。

6、在第二缓存单元检测到目标虚拟页的目标访问次数满足第二发送条件的情况下,基于目标访问次数生成目标虚拟页的目标计数信息,对目标计数信息进行上报处理。

7、第二方面,本申请提供了一种页表访问信息的处理装置,包括:

8、计数模块,被配置为通过第一缓存单元对虚拟页的访问事件进行计数,在第一缓存单元检测到虚拟页在第一缓存单元内的访问次数满足第一发送条件的情况下,基于访问次数生成虚拟页的计数片段信息。

9、发送模块,被配置为将计数片段信息发送至第一缓存单元连接的第二缓存单元,第一缓存单元和第二缓存单元是内存管理单元中的缓存单元。

10、统计模块,被配置为通过第二缓存单元,基于计数片段信息中包含的虚拟页的标识信息识别计数片段信息对应的虚拟页,对属于同一虚拟页的多条计数片段信息进行聚合统计,得到虚拟页的目标访问次数。

11、上报模块,被配置为在第二缓存单元检测到虚拟页的目标访问次数满足第二发送条件的情况下,基于目标访问次数生成虚拟页的目标计数信息,对目标计数信息进行上报处理。

12、第三方面,本申请提供了一种计算机存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述第一方面的页表访问信息的处理方法。

13、第四方面,本申请提供了一种电子设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的页表访问信息的处理方法。

14、借由上述技术方案,本申请提供的一种页表访问信息的处理方法、装置、存储介质及设备,与目前现有技术相比,本申请能够在内存管理单元内部完成两级缓存的计数与聚合处理。第一缓存单元负责对虚拟页访问事件进行本地计数,待访问次数满足第一发送条件后生成计数片段信息并推送至第二缓存单元,避免每一次访问事件都直接上报操作系统。第二缓存单元接收来自第一缓存单元的计数片段信息,依据虚拟页标识对同一虚拟页对应的多条计数片段信息执行硬件侧聚合统计,得到虚拟页的目标访问次数;直至目标访问次数满足第二发送条件,才生成目标计数信息向上上报。该方案将计数和聚合操作下沉至硬件内部完成,无需操作系统持续接收海量原始访问事件并承担聚合运算,大幅减少硬件向软件的上报次数,降低总线传输的数据量,有效削减系统资源开销与总线带宽占用,解决现有页表访问信息统计过程中频繁上报与软件聚合带来的资源消耗问题。

1.一种页表访问信息的处理方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述通过第一缓存单元对目标虚拟页的访问事件进行计数,在所述第一缓存单元检测到所述目标虚拟页在所述第一缓存单元内的访问次数满足第一条件的情况下,基于所述访问次数生成所述目标虚拟页的计数片段信息,包括:

3.根据权利要求1所述的方法,其特征在于,所述将所述计数片段信息发送至所述第一缓存单元连接的第二缓存单元,包括:

4.根据权利要求3所述的方法,其特征在于,所述利用所述第一缓存单元和所述第二缓存单元之间的页表缺失查询物理通路,将所述计数片段信息发送至所述第一缓存单元连接的第二缓存单元,包括:

5.根据权利要求1至4中任一项所述的方法,其特征在于,所述通过所述第二缓存单元,基于所述计数片段信息中包含的目标虚拟页的标识信息,对属于所述目标虚拟页的多条计数片段信息进行聚合统计,得到所述目标虚拟页的目标访问次数,包括:

6.根据权利要求5所述的方法,其特征在于,所述在所述第二缓存单元检测到所述目标虚拟页的目标访问次数满足第二条件的情况下,基于所述目标访问次数生成所述目标虚拟页的目标计数信息,对所述目标计数信息进行上报处理,包括:

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

8.一种页表访问信息的处理装置,其特征在于,包括:

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法。

10.一种电子设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的方法。