与曾经的内核比较,Linux 6.9内核将能以更快的速度发动具有很多内存(尤其是运用 HugeTLB 页面)的体系,然后显着缩短发动时刻。作为 Linux 6.9 兼并窗口内存办理(MM)更新的一部分,Linux 6.9 兼并了一组补丁,用于在发动时并行初始化 HugeTLB 页面。关于有很多 HugeTLB 页面的体系,这能够明显缩短发动时刻。
字节跳动公司的 Linux 研制人员 Gang Li 投入了很多时刻,经过多轮检查,总算使 HugeTLB 页面初始化成功。Gang Li 在前期的系列补丁中解说说:
发动过程中的 Hugetlb 初始化会占用很多时刻。例如,在一个 2TB 体系上,初始化 1,800 个 1GB 巨大页面需求 10 秒中的 1-2 秒。而在 12TB 英特尔主机上初始化 11776 个 1GB 页面则需求 1 分钟以上。 受[推迟页面初始化并行化]和[越过巨型尾部结构页面初始化]的启示,hugetlb 初始化也能够终究靠并行化来加快。内核已具有 padata_doo_multithreaded 等根底架构,本补丁使用这些根底架构,以最小的修正完成有用的成果。
关于具有很多 HugeTLB 页面的超大型服务器来说,这能够大幅度节约发动时刻:
关于超大型服务器和其他对服务可用性和体系正常运转时刻要求极高的大规模的公司来说,在需求重启体系的情况下,更快的发动时刻将带来极大的优点。