首页 > 生活分享 > 免费教学 > 由Google、OPPO、ARM、华为等大厂程序员贡献的Linux Large Folios大页在社区和产品的现状和未来

由Google、OPPO、ARM、华为等大厂程序员贡献的Linux Large Folios大页在社区和产品的现状和未来

发布时间:2024-04-12 23:31:18来源: 15210273549

Linux 内核中,一个 folio 可以只包含 1 个 page,也可以包含多个 page。当一个 folio 包含多个 page 的时候,我们称它为一个 large folio,在中文社区,我们一般称呼其为大页。采用 large folio 可潜在带来诸多好处,比如:

1. TLB miss 减小,比如许多硬件都支持 PMD 映射,可以直接把 2MB 做成一个 large folio,只占用一个 TLB entry;部分硬件支持 contiguous PTE 映射,比如 ARM64 可以让 16 个连续的 page 通过 CONT-PTE 只占一个 TLB entry。

 

2. page fault 次数减小,比如 do_anonymous_page() 在某个 PTE 的 page fault 后,直接申请一个 large folio 并映射一个 CONT-PTE 的话,则剩下的 15 个 PTE 不再发生 page fault。

 

3. 降低 LRU 的规模和内存 reclamation 的成本,以 large folio 为单位进行回收,整个 large folio 在 folio_referenced() 等的反向映射成本低于多个 small folio 单独进行 rmap 的成本;try_to_unmap_one() 理论上也如此。

 

4. 潜在的以更大粒度在 zRAM/zsmalloc 进行压缩/解压的机会,从而降低压缩/解压的 CPU 利用率、提高压缩率。比如 64KiB 的 large folio 整体压缩,比分成 16个4KiB 的 small folio 来进行压缩,有明显优势。

 

在 Linux 内核的整个内存管理中,large folios 将与 small folios(只有一个page)混合存在。比如在 LRU 链表上,挂在上面的 folio 既可能是 large,也可能是 small;一个进程的某个 VMA 里面的内存,可由 large folios 和 small folios 混合组成;文件的 pagecache 上,不同的 offset 上面对应的可能是 small folios 也可能是 large folios。

 

免费教学更多>>

3%成房贷利率“分水岭”,后续下调空间存多少?悬念即将揭晓 台北100㎡新房爆火!无电视墙无墙砖,凭啥被夸“装修教科书”? 热销楼盘背后,光谷楼市释放回暖新信号 真实!赣州7大片区最新房价大曝光!哪里波动最大? 红魔10S Pro系列手机搭载520Hz游戏肩键,支持防手汗算法 家电专家力荐!TCL T6L Pro 成 618 电视选购优选 这个造型很别致!Polaroid、MoMA共同推出限量版拍立得相机 618下骁龙8至尊版新机PK realme GT 7 Pro和红米 K80 Pro谁性价比更高? 华为首发!中国低轨卫星通信公测,下半年手机直连卫星组网 华为nova14 Ultra:一部会呼吸的旗舰手机 vivo Pad5 Pro,安卓平板“全能王”诞生!天玑9400+3.1K巨幕 vivo S30系列来袭!小屏旗舰6500mAh续航炸裂 5月29日!vivo S30携萌趣IP与超强影像来袭 vivo S30系列满足年轻用户的审美需求打造的沉浸式生活美学 荣耀Magic8系列也要做小屏手机,天玑9500骁龙8 Elite 2双管齐下 荣耀400系列开启全球征程,国行版或是同档天花板 电竞三芯加持!一加Ace 5至尊版曝光,相比友商的至尊版如何? 紫光展锐处理器手机推荐 焕新客厅的秘密,TCL T7L Pro 用实力种草我全家! 索尼PlayStation 20周年:PS1开启娱乐帝国的序章 红米K80深度评测:重新定义中端机市场的技术美学 魅族Note16:设计灵感与国民手感的完美融合,618优惠活动开启 真我新机预热,下代旗舰在路上 华为新手机卖疯了!几百个应用集体跟进…这次鸿蒙系统真火了 为什么说Nova14是最值得买的华为手机? 消息称某厂下一代大折叠排期2026Q1,预计为OPPO Find N6 华为发布首款鸿蒙折叠电脑,定义“未来电脑态” 胶片色彩+萌力暴击!vivo S30系列5月29日来袭 旗舰芯+纯直屏+大电池,一加新机官宣:5月27日,正式发布! 一加Ace5至尊版首发“电竞三芯” 引领游戏硬件解决方案新变革