基于UKSM的高效内存合并技术的研究和实现

来源 :南京大学 | 被引量 : 0次 | 上传用户:pantherzzx
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
内存去冗余化一直是计算机高性能领域研究的一个热点,在服务器上特别是云计算中,各类的服务或者虚拟机对内存的需求很高,在传统的虚拟机技术中,每个虚拟机(VM)都需要有一块独立的内存,不能的虚拟机内存之间存在着相同页面;而在轻量级的容器技术中,不同容器之间,容器与主机之间会存在着不少的文件和内存数据是重复的;在内存计算中,对内存的需求尤其大。其他包括个人计算机和终端设备如手机也存在着内存紧张的问题。因此不仅有必要,也有需求提高内存利用率。因而,探究更好的去除内存冗余度的方法将有很大的应用前景。内存去冗余就是消除内存中的相似或是相同的内存区域,把存储多份冗余的内存变为只存储一份的一种方法。系统中可能会存在大量的冗余内存,当前主要有内存压缩和内存去冗余两种方法,并且都已经成功应用在Linux内核中。内存去冗余的代表作是UKSM,内存压缩的代表作是Zswap。然而,现在Linux内核中的这两种机制是由不同的团队设计并且实现的,它们去除内存冗余的速度和方式不相同,因而不能相互替代,在内存紧张时,同步Zswap会先压缩内存,会导致UKSM无法扫描到被压缩的页面。这时需要一种协同工作机制能够协调这两种方法运行。文件系统的文件缓存存在于内存中,当前没有方法能够消除文件系统中文件缓存的冗余数据。主要原因是文件缓存存在于内存中,涉及与I/O交互的块设备,设计一种方法统一消除所有文件系统中文件缓存的冗余是个很困难的任务。但是如果可以消除内存中文件缓存的冗余数据,就可以有效提高系统内存利用率。本文对上述两个问题进行研究,针对第一个问题提出了内存压缩和内存去冗协同工作机制,协调两种方法的运行,具体设计了一种同步机制,在进行内存压缩前首先进行内存去冗余扫描,确保所有相同的页面都被合并。同时考虑了不对整个系统的性能造成过大影响。针对第二个问题,结合UKSM设计了种包含文件数据切片,页面合并,页面拆分的文件系统去冗余方法。本文的主要成果如下:1.同机制,考虑了内存压缩和内存去冗余这两种方法的特性,也考虑了协同机制对系统性能的影响,并且在Linux内核中实现了这种机制。2.设计对比实验测试了协同运行机制,丰富的实验结果证明了这个机制的有效性,并且在高CPU负荷和高内存需求时都表现良好。在给系统带来快速合并内存页面的性能优势时,对CPU占用的增加并不明显。3.针对特定的内存文件系统,本文设计了文件缓存的去冗余机制。结合UKSM的扫描设计,根据虚拟文件系统的设计(VFS),对文件(inode)切片,分割成适合采样、扫描的小块。设计了中断安全的页面比较合并机制和页面拆分的写时拷贝技术。在Linux内核中实现。4.根据内存文件系统文件缓存去冗余机制,设计对比实验,在实验中对文件缓存页面的去冗余速度高达2.28MB/s。
其他文献
分布式(网格)体系结构是当前研究和应用的热点,被视为下一代IT技术发展的基础,是互联网发展的必然趋势。这种体系结构提出的最终目标就是要把整个因特网整合成一台巨大的超级
在现代工业企业的生产和管理中,大量的物理量、工艺数据、特性参数需要进行实时检测、监督管理和自动控制。这是现代工业必不可少的基本手段。随着计算机技术和管理技术的飞
随着计算机软硬件技术的发展,在机械设计制造领域内,三维零件模型呈爆炸式的增长。探索有效的三维零件模型检索技术,快速的从海量模型库中检索出需要的模型,成为当前学术及工
随着网格研究的深入和网格基础设施的发展,在网格上开发了越来越多的功能强大、需要大量资源的科学计算和协同应用,很多网格应用也越来越复杂,具有时间、空间和资源等多种约
随着软件复杂度的日益增大,仅仅依靠技术和工具已经不能满足对软件开发质量的要求,越来越多的软件组织希望通过软件过程来提高组织能力成熟度。而复用软件过程是提高组织过程
约束求解(CSP)是计算机理论界历史悠久的问题,有着广泛的应用。本论文集中讨论了两种CSP问题:SAT和图染色问题,介绍了比较新的SAT算法Survey Propagation(SP)和自己在SP算法
本文对词义消歧问题进行了研究,以《现代汉语语法信息词典》中的“同形多义词”为研究对象,以《人民日报》基本标注语料库为研究素材,设计并实现一个统计与规则方法相结合的词义
身份认证是信息安全和保密通信的基础,也是整个电子信息交换体系可靠性和可用性的保证。通过身份认证机制可以鉴别网络通信中涉及到的各种身份,保证通信参与各方身份的真实性
本文研究了基于ANSI INCITS 359标准的RBAC构件设计与实现,主要工作有: (1)对2004年最新发布的ANSIINCITS359RBAC标准进行了较为深入的研究,探索了其核心思想; (2)讨论了Wi
日益扩展的网络和飞速发展的网络技术给网络应用提供了巨大的发展空间。在网络应用拓展的同时,其承担的业务越来越多,规模越来越大,结构也越来越复杂,而且呈现出高度的异构性