小米 HyperOS 2 的动态内存页是如何实现的?

60 天前
 Yadomin

在极客湾评测小米 15 的视频中,提到了 HyperOS 2.0 对内存管理的优化。

看到这里感觉非常迷惑,印象中 Linux 的页大小是一个固定的值,和 CPU 的支持相关,一般都是用 4K ,Android 15 要改成 16K ,小米是怎么实现动态的页大小的?

另外这么改不会造成兼容性问题吗? Android 15 要改成 16k 页都需要一些应用重新编译,动态的岂不是更难适配?

7908 次点击
所在节点    小米
40 条回复
wuoty
60 天前
伙伴系统?
firstlove
60 天前
就是 large folio 呗...
https://lwn.net/Articles/937239/

这不是这几年内存管理最火热的改革方向吗...
muapyw
60 天前
只要金凡敢开通抖音号,我就信了 hy2 吹的牛逼
xiuming
60 天前
记得 golang 也是内存分级 将对象分成了三类 8B 到 32KB ,总共 67 种跨度类的大小 还有内存对齐 ,小米后端也是挺多用 Golang 。
JohnSmith
60 天前
@xiuming 操作系统和程序 runtime 是一个东西吗
Donaldo
60 天前
这个东西在系统 framework 层应该是没法动?那如果是修改的 linux 内核,那他应该会开源吧(假设他遵守 GPL ),那到时候就能看到源码了。
Donaldo
60 天前
@FightPig #10 错了,以前的 miui 比近些年这个强多了😭
liyafe1997
60 天前
我感觉更倾向吹牛逼,先不说动态页,就算你改变页大小,用户空间的 binary 都要重新编译适配吧?
12101111
60 天前
这个是 OPPO 去年最先用到手机上的
可以看看今年 LPC 上 OPPO 的演讲 Product practices of large folios on millions of OPPO Android phones
<amp-youtube data-videoid="Oa7UWFeXyN4" layout="responsive" width="480" height="270"></amp-youtube>(演讲人的英文口语非常难绷)

还有去年的 ppt
https://github.com/ChinaLinuxKernel/CLK2023/blob/main/%E5%88%86%E8%AE%BA%E5%9D%9B1%EF%BC%88%E5%86%85%E5%AD%98%E7%AE%A1%E7%90%86%EF%BC%89/8%20%20%E5%8A%A8%E6%80%81%E5%A4%A7%E9%A1%B5%EF%BC%9A%E5%9F%BA%E4%BA%8EARM64%20contiguous%20PTE%E7%9A%8464KB%20HugePageLarge%20Folios%E2%80%94%E2%80%94%E9%9F%A9%E4%BC%A0%E5%8D%8E.pptx
vsomeone
60 天前
我印象里 Linux 也支持 THP 透明大页,现在手机动辄十几个 G 的内存应该也开启了 THP 吧?感觉他这个视频像为了营销做的
DylanLiuH2O
60 天前
要是小米能发个论文写个专利啥的我就信了,不然可能就只是一些工程上的针对性调优,普适性未知,说起来确实感觉没有鸿蒙内核那么有含金量。
uriah
60 天前
不知道和最新的 Android 15 Beta 2 引入 16KB 内存页面支持。是不是一类
Stevenv
60 天前
不信。流畅度可能是处理器更新带来的哈哈
WizardLeo
60 天前
@DefoliationM 如果是供应链技术,应该不止小米一家能接触到吧?应该不会作为主要宣传的内容才对。
ipcjs
59 天前
@uriah Android 15 的 16K 分页,不是要重新编译 so 文件吗?应该不同吧
ffnil
59 天前
linux 是 gpl 的吧,能看到源代码吗?
Yadomin
59 天前
Shaaaadow
57 天前
前内核开发者表示,极客湾讲的可能也有点片面了。小米的内核具体怎么实现的我不了解,但是搞 huge page 的主要目的不是为了降低 page fault 次数,而是降低 TLB miss 频率。
hwf
57 天前
说实话, 小米的 HyperOS 2 大部分优化,性能提升都是处理器带来的, 看看今年各大 OS 都在说性能提升多少多少, 动画多么多么流畅就知道了, 功耗下降多少多少, 都是处理器带来的
nod32vad
54 天前
我很好奇 HyperCore 的那个 CPU 空转时间降低也是他们自己搞的吗

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1083766

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX