UKSM


UKSM

文章插图
UKSM【UKSM】Linux UKSM这个项目,在 RHEL6、CentOS 6、Ubuntu 12.04 等系统验证和测试后,对于伺服器和桌面套用,能够以极快的速度全系统扫描,併合并冗余数据,可显着减少 Linux 系统冗余的记忆体 。UKSM的出现,消除了KSM原本局限,使得这项技术能被更多的普通用户使用 。Linux UKSM 是国人自主研发的一个 Linux 核心相关项目 。
基本介绍外文名:UKSM
类   型:核心相关项目
应   用:系统扫描,冗余消除等
简介Linux UKSM 是国人自主研发的一个 Linux 核心相关项目,这个项目对伺服器和桌面套用都可以显着的减少 Linux 系统冗余的记忆体,已经在 RHEL6、CentOS 6、Ubuntu 12.04 等系统充分验证和测试过 。Linux相同页面合併机制(KSM)使得记忆体中相同的页面,可以通过修改页表的方式合併成一个 。通常这个机制被套用在有众多虚拟机(目前仅支持 KVM)或者有很多冗余记忆体数据的场景(如有很多类似数据工作集的并行科学计算)里面 。但是,目前它的实现方式仍然比较简陋,UKSM的出现,彻底消除了KSM原本局限,真正使得这项技术能被更多的普通用户使用 。特点具体的来说,它有以下的亮点(原本KSM不具有的特性):全系统扫描,用户透明 。UKSM现在自动扫描所有用户进程的匿名映射记忆体区域(包括malloc分配出来的记忆体) 。不需要修改一行应用程式的源码,使用起来超级简单,安装完成以 后,重启使用本站补丁的核心即可(有部分已编译的二进制核心供下载) 。起它几乎什幺都不需要做(除非你想通过sysfs调整其内部参数) 。不无谓地浪费CPU时间 。UKSM自动探测并分析得出包含丰富冗余数据的区域,并在其上全速工作 。对于没有太多冗余甚至彻底没有冗余数据的区域,只进行速度非常低(通常情况下,用top看,CPU占用率为0)的採样扫描 。而当包含丰富冗余数据的区域出现的时候,它又能非常快速的作出回响 。UKSM能够以极快的速度扫描,併合并冗余数据 。在Intel core 2 Q9300的CPU上,KSM的官方评测其记忆体合併速度最高在260M/s左右,而实际工作的平均速度在几十M每秒 。由于採用了全新的hash算法,相同的硬体环境下面,我们的算法的合併速度最高可达到477MB/sec ~ 923MB/sec 。而对于不包含冗余数据的页面上,UKSM的扫描速度最高是627MB/sec ~ 2445MB/sec 。正因为有如此惊人的速度,全系统扫描才真正成为可能 。而对于已有的KVM的冗余消除套用来说,速度上无疑是一个质的的飞跃!抖动区域避免 。UKSM能实时自动地发现不友好的抖动区域,并降低其上的扫描速度,避免在此类区域上浪费时间 。