Linux 6.2 通过 ZRAM 支持多重压缩流
ZRAM 是内核的内存优化模块,先划定一片区域,然后将压缩过后的硬盘数据放入该区域,以实现高速读取。目前 Linux 6.2 已合并 ZRAM 中对多个压缩流的支持 ,作为内存管理相关补丁的一部分。
Google 工程师一直致力于实现 ZRAM 中的多压缩流支持,似乎准备在 Chrome 操作系统上使用它。ZRAM 中的多压缩流支持在每个 CPU 的基础上处理多个压缩流,其主要思想是不同的压缩算法具有不同的特性,ZRAM 在使用算法组合时可能会从中受益,比如有些速度很快但压缩率较低的压缩算法,可以使用速度较慢但压缩率较高的辅助算法来减压。
根据 ZRAM 的文档介绍,此功能有几个用例:
大页面重新压缩:zstd 或 defalte 可以成功压缩大页面(在综合 ChromeOS 测试中约占大页面的 50%),lzo 无法压缩的 IOW 页面。
空闲页面重新压缩:空闲/冷页面位于内存中,如果我们重新压缩这些空闲页面,我们可能会减少 zsmalloc 内存使用。
用户空间有很多方法来控制 zram 重新压缩的行为和影响:应该重新压缩什么类型的页面、大小水印等,这使得 ZRAM 的压缩更灵活。
合并最新补丁后,ZRAM 设备新增了“recomp_algorithm”和“recompress” 两个 sysfs 属性,可以用来完成二级压缩算法的管理。启用 ZRAM_MULTI_COMP 选项的 ZRAM 设备最多允许支持四种不同的压缩算法。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
[官宣新晋开源项目] RedisFront 加入 Dromara 社区,开源跨平台 Redis 桌面客户端工具
一、RedisFront简介 RedisFront是一款开源跨平台的Redis桌面客户端工具,基于Java Swing开发,其特点是简单易用,功能丰富;支持String、Hash、Set、List、ZSet、Stream等多种数据类型的管理,同时支持SSH隧道连接以及 SSL/TLS连接,对于Redis Cluster、Sentinel模式也有非常完善的支持,可轻松管理百万甚至千万级缓存数据。 二、RedisFront特色功能 支持Redis Cluster连接,可自动识别发现其他节点 支持Redis Sentinel连接,可自动发现并重定向Master节点,也可选择进入Sentinel节点 支持远程Cli命令执行 支持Redis发布订阅( pub/sub) 支持SSH隧道连接 支持JSON值自动格式化 支持便携模式(可将RedisFront绿色版放置移动存储设备中使用) 提供简易实用的Redis监控 提供Key内存占用分析 提供Key批量删除功能 三、RedisFront下载安装 RedisFront 提供了多个操作系统平台的二进制安装包和绿色版压缩包,可根据自己电脑操作系统下载对应...
- 下一篇
8000字详解Thread Pool Executor
摘要:Java是如何实现和管理线程池的? 本文分享自华为云社区《JUC线程池: ThreadPoolExecutor详解》,作者:龙哥手记 。 带着大厂的面试问题去理解 提示 请带着这些问题继续后文,会很大程度上帮助你更好的理解相关知识点。@pdai 为什么要有线程池? Java是实现和管理线程池有哪些方式? 请简单举例如何使用。 为什么很多公司不允许使用Executors去创建线程池? 那么推荐怎么使用呢? ThreadPoolExecutor有哪些核心的配置参数? 请简要说明 ThreadPoolExecutor可以创建哪是哪三种线程池呢? 当队列满了并且worker的数量达到maxSize的时候,会怎么样? 说说ThreadPoolExecutor有哪些RejectedExecutionHandler策略? 默认是什么策略? 简要说下线程池的任务执行机制? execute –> addWorker –>runworker (getTask) 线程池中任务是如何提交的? 线程池中任务是如何关闭的? 在配置线程池的时候需要考虑哪些配置因素? 如何监控线程池的状态? 为什么...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS关闭SELinux安全模块
- CentOS8编译安装MySQL8.0.19
- CentOS8安装Docker,最新的服务器搭配容器使用
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Red5直播服务器,属于Java语言的直播服务器
- Windows10,CentOS7,CentOS8安装Nodejs环境