[发明专利]一种基于细粒度的内存分配方法有效
申请号: | 201810680691.2 | 申请日: | 2018-06-27 |
公开(公告)号: | CN108920254B | 公开(公告)日: | 2021-07-06 |
发明(设计)人: | 许胤龙;刘军明;李永坤;郭帆;李诚;吕敏;陈吉强 | 申请(专利权)人: | 中国科学技术大学 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 汪祥虬 |
地址: | 230026 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于细粒度的内存分配方法,特征是采取虚拟机类型的探测、虚拟机内页面类型的探测、细粒度的差异化页面分配策略和访存感知的内存动态分配策略。由于对虚拟机的类型进行了区分,使得I/O密集型和计算密集型的虚拟机使用的页面都是小页,与系统默认为虚拟机分配大页的策略相比,缓解了内存膨胀,降低了内存分配开销,提高了内存重删率;同时对于访存密集型虚拟机,将其匿名页分配为大页,可以保持较高的访存性能,而将访存密集型虚拟机的Page Cache页和内核页分配为小页,与系统默认分配大页的策略相比,缓解了内存膨胀,降低了内存分配开销,提高了内存重删率,尽可能地降低了系统性能的损失。 | ||
搜索关键词: | 一种 基于 细粒度 内存 分配 方法 | ||
【主权项】:
1.一种基于细粒度的内存分配方法,其特征在于包括以下步骤:第一步:虚拟机类型的探测针对所有运行的虚拟机,通过硬件性能计数器获取虚拟机的内存带宽,通过截获虚拟机输入/输出的访问路径,获取虚拟机的I/O访问频率;设定一个范围在[0,N]的阀值T1表示内存带宽,设定一个范围在[0,N]的阀值T2表示I/O访问频率,依据T1和T2这两个阈值将虚拟机分为三种类型:将内存带宽大于等于T1且I/O访问频率小于T2的虚拟机标记为访存密集型虚拟机;将内存带宽大于等于T1且I/O访问频率大于等于T2的虚拟机标记为I/O密集型虚拟机;将内存带宽小于T1且I/O访问频率小于T2的虚拟机标记为计算密集型虚拟机;第二步:虚拟机页面类型的探测针对虚拟机运行过程中占用的内存,将虚拟机内使用的内存分为三个类型:通过截获虚拟机输入/输出的访问路径,在文件系统层,将虚拟机I/O请求的目标页标记为虚拟机的页高速缓存页;根据Linux内存系统的管理方式,在虚拟机内存地址映射层,将虚拟机物理地址前1GB的页面标记为虚拟机的内核页;将虚拟机使用的剩余页面标记为虚拟机的匿名页;第三步:细粒度的差异化页面分配策略对于被标记为I/O密集型或计算密集型的虚拟机,在分配内存的时候,统一为这些虚拟机内存分配小页;针对访存密集型虚拟机,对于它的Page Cache页和内核页这两个类型的页面分配小页,而对于访存密集型虚拟机的匿名页分配大页;第四步:访存感知的内存动态分配策略对于被标记为I/O密集型或计算密集型的虚拟机,如果这些虚拟机的类型转变为访存密集型,则将这些虚拟机的匿名页由小页转换为大页;对于被标记为访存密集型的虚拟机,如果这些虚拟机的类型转变为I/O密集型或计算密集型,则将这些虚拟机的匿名页由大页转换为小页。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学技术大学,未经中国科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810680691.2/,转载请声明来源钻瓜专利网。