Другая версія патчаў c рэструктурызацыяй загалоўкавых файлаў ядра Linux

Інга Молнар (Ingo Molnar) прадставіў другую версію набору патчаў, які дазваляе значна скараціць час перазборкі ядра за кошт рэструктурызацыі іерархіі загалоўкавых файлаў і скарачэнні ліку крыжаваных залежнасцяў. Ад прапанаванай некалькі дзён таму першай версіі новы варыянт адрозніваецца адаптацыяй для ядра 5.16-rc8, даданнем дадатковых аптымізацый і рэалізацыяй падтрымкі зборкі з выкарыстаннем кампілятара Clang. Пры выкарыстанні Clang ужыванне патчаў дазволіла скараціць час зборкі на 88% або на 77% у паказчыках расходавання рэсурсаў CPU. Пры поўнай перазборцы ядра камандай make -j96 vmlinux час зборкі скарацілася з 337.788 да 179.773 секунд.

У новай версіі таксама вырашана праблема з убудовамі GCC, выпраўлены выяўленыя падчас пачатковага рэцэнзавання памылкі і праведзена ўніфікацыя дублікатаў аб'явы структуры "task_struct_per_task". Акрамя таго, працягнута аптымізацыя загалоўкавых файлаў linux/sched.h і рэалізаваная аптымізацыя загалоўкавых файлаў падсістэмы RDMA (infiniband), якая дазволіла дадаткова скараціць час зборкі на 9% адносна першай версіі патчаў. Лік Сі-файлаў ядра, якія падключаюць загалоўкавыя файл linux/sched.h, скарочана з 68% да 36% у параўнанні з першай версіяй патчаў (з 99% да 36% у параўнанні з зыходным ядром).

Крыніца: opennet.ru

Дадаць каментар