Linux 5.15 解決大型 IBM 服務(wù)器啟動過慢問題
在 Linux 5.15 合并窗口中,一組關(guān)于 Kernfs 性能改進(jìn)的補(bǔ)丁通過驅(qū)動程序核心 PR 合并,可解決大型 IBM 服務(wù)器引導(dǎo) Linux 內(nèi)核過慢的問題。
在 Linux 內(nèi)核中,kernfs 是一組函數(shù),其中包含創(chuàng)建各種內(nèi)核子系統(tǒng)內(nèi)部使用的偽文件系統(tǒng)所需的功能。它通過將硬件設(shè)備和相關(guān)設(shè)備驅(qū)動程序的信息從內(nèi)核的設(shè)備模型導(dǎo)出到用戶空間來提供一組虛擬文件,成為一個(gè)獨(dú)立且可重用的功能,因此其他內(nèi)核子系統(tǒng)可以更輕松、更一致地實(shí)現(xiàn)自己的偽文件系統(tǒng)。
此前,具有 “數(shù)百個(gè) CPU 和 64TB RAM” 的大型 IBM Power 系統(tǒng)需要 30 多分鐘才能啟動 Linux 內(nèi)核,而且還需要額外的內(nèi)核參數(shù)以避免內(nèi)核在啟動時(shí)超時(shí)。而造成該問題的原因即在于對不存在的文件進(jìn)行多次路徑查找以及 VFS 代碼中的鎖競爭。更糟糕的是,IBM Power 會將 64TB 的系統(tǒng)內(nèi)存分成 256MB 的本地塊,導(dǎo)致大量的 sysfs 節(jié)點(diǎn)創(chuàng)建。
而此次更改涉及將 Kernfs 互斥體切換為使用讀寫信號量以允許并行節(jié)點(diǎn)搜索、改善路徑解析以及使用 VFS 緩存。通過這些優(yōu)化,大型 IBM 系統(tǒng)的啟動時(shí)間可縮短到 5 分鐘以內(nèi)。
更多詳細(xì)內(nèi)容,可查看該補(bǔ)丁集。
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:Linux 5.15 解決大型 IBM 服務(wù)器啟動過慢問題
本文地址:https://www.oschina.net/news/158319/linux-5-15-kernfs-improvement