KSM,UKSM,PKSM(2/2)
PKSM是国人对KSM,UKSM的改进。
主要有以下优点,目前PKSM处于开发阶段,尚不能商用。
相对于UKSM,优点主要在于2,4
1.对用户透明
自动添加全系统的用户进程的匿名页面到PKSM中,因此不在需要用户修改用户程序(使用madvise系统调用来添加用户进程到KSM系统中)。
2. 高效的匿名内存页面检测
自动检测匿名页面的创建和释放,使用新的算法和机制来直接处理linux内核创建/释放匿名页面。PKSM不再需要浪费大量的CPU来遍历所有的VMA区域来查找可用的匿名页面。KSM/UKSM会浪费很多CPU来遍历系统所有的VMA区域去查找可用的匿名页面,而PKSM则不需要考虑这些。
3. 考虑内容全零页面
现在pksmd将全零内存块视作特殊的内存页面,并将他们合并到一个特殊的不能交换的pksm zero page(从UKSM借用的)。
4. 周期性检查内存块的内容
Pksm将不稳定的匿名页面放入一个FIFO队列中,周期性地检查其这些匿名页面的校验值, 如果发现内容发生变化, 那麽这些页面会重新进行比较和合并。系统默认每20分钟检查完所有的不稳定的匿名页面。
KSM,UKSM,PKSM(2/2)相关推荐
- pandas使用str函数和startswith函数,筛选dataframe中(start with)以特定前缀开头的数据列(selecting columns begin with certain
pandas使用str函数和startswith函数,筛选dataframe中(start with)以特定前缀开头的数据列(selecting columns begin with certain ...
- IEEE最新薪资报告 | 手机开发者年入153万,机器学习并非最高(附链接)
来源:机器之心 本文约1500字,建议阅读7分钟. 本文为你介绍手机开发者最新的薪资报告及市场情基本情况. 都是学工科,该入哪一行?薪资水平是人们考量未来职业的重要因素.IEEE 刚刚发布的年度薪资调 ...
- python自学入门教程-Python基础教程,Python入门教程(非常详细)
Python 英文本意为"蟒蛇",直到 1989 年荷兰人 Guido van Rossum (简称 Guido)发明了一种面向对象的解释型编程语言(后续会介绍),并将其命名为 P ...
- python详细基础教程-Python基础教程,Python入门教程(非常详细)
Python 英文本意为"蟒蛇",直到 1989 年荷兰人 Guido van Rossum (简称 Guido)发明了一种面向对象的解释型编程语言(后续会介绍),并将其命名为 P ...
- python程序打包成exe可执行文件,亲测可行(pyinstaller教程)
python程序打包成exe可执行文件,亲测可行(pyinstaller教程)(11-20190214) 文章目录: 有些程序你不想让别人看到,由此程序你想做成绿色软件普惠大众,有些..., 然而你只 ...
- python教程:dict字典常用方法总结,数据解构(解包)
dict {'name':'holle'}字典存储大量关联型数据,可迭代的,最多只有200个键.查询数据速度非常快,符合二分查找(有100个数比如找75会先找到50然后判断,所以2^7次方7次即可找到 ...
- 初始序列为1 8 6 2 5 4 7 3一组数采用堆排序,当建堆(小根堆)完毕时,堆所对应的二叉树中序遍历序列为
初始序列为1 8 6 2 5 4 7 3一组数采用堆排序,当建堆(小根堆)完毕时,堆所对应的二叉树中序遍历序列为:() 8 3 2 5 1 6 4 7 3 2 8 5 1 4 6 7 3 8 2 5 ...
- 加利福尼亚大学(尔湾)等提出 Nasty Teacher,避免模型“被蒸馏”,加强知识产权保护(ICLR 2021)...
关注公众号,发现CV技术之美 本文分享ICLR 2021论文『Undistillable: Making A Nasty Teacher That CANNOT teach students』,提出一 ...
- (99)利用任务task实现单字节乘法功能,面试必问(二十三)(第20天)
(99)利用任务task实现单字节乘法功能,面试必问(二十三)(第20天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)利用任务task实现单字节乘法功能,面试 ...
- (97)序列检测器状态转移图,面试必问(二十一)(第20天)
(97)序列检测器状态转移图,面试必问(二十一)(第20天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)序列检测器状态转移图,面试必问(二十一)(第20天) ...
最新文章
- 在Linux终端下查看GPU正常使用的情况
- pyinstaller 工具起步
- Golang init函数执行顺序
- arraylist是如何扩容的?_ArrayList的源码分析
- Gitorious安装与配置
- psql+加载mysql数据库_Go实战--go语言操作PostgreSQL数据库(github.com/lib/pq)
- leetcode 390. Elimination Game | 390. 消除游戏(Java)
- 【洛谷 P4051】 [JSOI2007]字符加密(后缀数组)
- 性能测试中脚本怎么写_脚本在流程中的性能影响
- [Spark]-编译(2.3.1)部署(YARN-Cluster)
- 最新使用Python进行开发网站教程项目实战(完整)
- 生活中的十大心理学现象
- 世界名牌CD机解码芯片大全
- Diverse Team(暴力)
- Centos7之清理/var/tmp目录下内容
- MSP432的系统时钟和简单系统定时
- C99/Cpp 使用printf 时format大全
- 安装oaj2se出现问题
- SEO人员,怎么先发制人做好SEO?
- tkz-euclide作图教程02 | 立体几何作图示例
热门文章
- 致各位机油,i9000购机必验项目(含电池识别)
- 通过github搭建个人博客2-博客个性化设置
- python爬虫开发之“智联招聘”网页爬取
- 浙大版《Python 程序设计》题目集 第2章-14 求整数段和
- golang中的 ‘_’ 代表什么
- 华为平板品类崛起!2020年一季度出货量继续超苹果
- superset1.5开发,中国地图实现中文版
- javascript实现图片隐写
- Revit 2019: Essential Training for Architecture (Metric) Revit 2019:建筑基本培训(公制) Lynda课程中文字幕
- matlab绘制动画