[发明专利]页表缓存优化方法和页表更新方法在审
申请号: | 202111628782.X | 申请日: | 2021-12-28 |
公开(公告)号: | CN114510441A | 公开(公告)日: | 2022-05-17 |
发明(设计)人: | 张超 | 申请(专利权)人: | 阿里巴巴(中国)有限公司 |
主分类号: | G06F12/1027 | 分类号: | G06F12/1027;G06F12/1009 |
代理公司: | 北京展翼知识产权代理事务所(特殊普通合伙) 11452 | 代理人: | 屠长存 |
地址: | 310052 浙江省杭州市滨江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓存 优化 方法 更新 | ||
1.一种页表缓存优化方法,包括:
在物理机上创建使用虚拟地址访问内存的模块之前,获取所述模块的属性信息和/或当前可用的页表缓存资源,所述属性信息是与所述模块对页表缓存的需求程度相关的信息;
针对所述模块配置第一页面尺寸的页表,所述第一页面尺寸是基于所述属性信息和/或所述页表缓存资源设置的。
2.根据权利要求1所述的方法,其中,所述属性信息包括优先级和/或内存规格。
3.根据权利要求2所述的方法,其中,所述第一页面尺寸的大小与所述模块的优先级和/或内存规格正相关。
4.根据权利要求1所述的方法,其中,所述模块的虚拟地址空间被划分为多个页,所述页的页面尺寸与所述第一页面尺寸相同,该方法还包括:
生成对应于所述模块的位图,所述位图中的每个位对应所述多个页中的一个页;
在模块运行过程中记录预定时长范围内针对所述模块的虚拟地址空间发起的地址访问操作所访问的虚拟地址所对应的页;
对所述位图中与记录的页对应的位进行置位;
根据所述位图中位的置位情况,评估页表缓存的性能。
5.根据权利要求4所述的方法,还包括:
基于评估结果将所述第一页面尺寸调整为第二页面尺寸。
6.根据权利要求5所述的方法,还包括:
根据所述第二页面尺寸,重新确定所述页表的页表级数;
基于重新确定的页表级数,重新生成对应于所述模块的页表。
7.根据权利要求5所述的方法,其中,所述模块为虚拟机,所述地址访问操作是由直通虚拟机的设备发起的,所述虚拟机运行在虚拟化程序中,该方法还包括:
创建新的虚拟化程序;
停止所述虚拟机的运行以及直通虚拟机的设备的运行;
根据所述第二页面尺寸,重新确定所述页表的页表级数;
在新的虚拟化程序中按照重新确定的页表级数生成对应于所述模块的页表;
将旧虚拟化程序的内存重新映射到新的虚拟化程序;
恢复虚拟机的运行以及直通虚拟机的设备的运行。
8.一种页表更新方法,包括:
在物理机上创建的模块的运行过程中,评估所述模块的页表缓存的性能;
基于评估结果确定是否需要调整所述模块的页表中页的页面尺寸。
9.根据权利要求8所述的方法,其中,评估所述模块的页表缓存的性能的步骤包括:
生成对应于所述模块的位图,所述位图中的每个位对应所述页表中的一个页;
在模块运行过程中记录预定时长范围内针对所述模块的虚拟地址空间发起的直接存储器访问操作所访问的虚拟内存地址所对应的页;
对所述位图中与记录的页对应的位进行置位;
根据所述位图中位的置位情况,评估所述页表缓存的性能。
10.根据权利要求8所述的方法,还包括:
若确定需要调整所述模块的页表中页的页面尺寸,则将页面尺寸由第一页面尺寸调整为第二页面尺寸;
根据所述第二页面尺寸,重新确定所述页表的页表级数;
基于重新确定的页表级数,重新生成对应于所述模块的页表。
11.一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1至10中任何一项所述的方法。
12.一种计算机程序产品,包括可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1至10中任何一项所述的方法。
13.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1至10中任何一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴(中国)有限公司,未经阿里巴巴(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111628782.X/1.html,转载请声明来源钻瓜专利网。