余承東提到的“確定時延引擎”:華為數(shù)百位專家研發(fā)2年
華為今日舉行Mate 30系列發(fā)布會,在EMUI系統(tǒng)層面,在講到軟件性能優(yōu)化時,華為消費者業(yè)務CEO余承東提到EMUI 10搭載了新一代GPU Turbo,以及另一個新技術—;—;“確定時延引擎”。
據(jù)余承東介紹:“擁有確定時延引擎的EMUI 10,在平均響應時延和性能波動方面均有所改善,完成時延降低31%,時延波動率降低55%。無論在哪種場景下,用戶體驗流暢性始終如一。 ”
究竟什么是“確定時延引擎”?這要從安卓資源調(diào)度策略說起。
安卓系統(tǒng)源于Linux,安卓資源調(diào)度也根植于Linux內(nèi)核。手機相對于PC,并不充裕的資源以及更加復雜多變的使用場景,使得源于Linux的資源調(diào)度策略越來越力不從心,安卓手機遭遇莫名卡頓也是常有的事。
要想改變這一現(xiàn)狀,要從CPU調(diào)度、內(nèi)存調(diào)度、IO這三個方面下手,撬動Linux內(nèi)核。
據(jù)介紹,華為此次推出的確定時延引擎,具備VIP優(yōu)先調(diào)度、優(yōu)先級矯正、預留服務三項技術。
VIP優(yōu)先調(diào)度類似銀行的VIP通道,讓本應該優(yōu)先的進程可以繞過隊列,保障執(zhí)行效率。不僅如此,華為還對網(wǎng)絡協(xié)議棧進行了改造,針對低優(yōu)先級的部分網(wǎng)絡業(yè)務進行協(xié)議上的限流。在網(wǎng)絡帶寬一定的情況下,盡可能保障“前臺”業(yè)務的IO請求。
優(yōu)先級矯正則是如果一個高優(yōu)先級的任務依賴于低優(yōu)先級的任務,就需要將低優(yōu)先級任務提前。確定時延引擎首先是對相關數(shù)據(jù)結構重新設計,賦予了CPU和IO調(diào)度器業(yè)務感知能力,能夠精確知道哪些線程在哪些時間段是跟用戶操作真正相關的。
預留服務則是,智慧前臺調(diào)度既可以保證“前臺”任務請求內(nèi)存優(yōu)先分配,減少進入慢速路徑的次數(shù),又可以在高負載情況下緩解內(nèi)存抖動現(xiàn)象。
據(jù)悉,為了這項技術,華為投入數(shù)百位技術專家,耗時近2年研發(fā)而成。按照華為的說法,它可以將響應時延降低25.7%,時延波動率降低55.6%。
在EMUI上,華為目前已經(jīng)陸續(xù)推出了GPU Turbo、EROFS超級文件系統(tǒng)、方舟編譯器以及確定時延引擎等針對系統(tǒng)內(nèi)核進行的改動。