Linuxové jadro je chrbticou operačných systémov Linux (OS) a je základným rozhraním medzi hardvérom počítača a jeho procesmi.
Pred pár dňami Zdieľame tu na blogu správu o jednej zo zmien Čo nájdeme pri uvedení linuxového jadra 6.9, ktorý je momentálne vo vývoji a už sú známe rôzne zmeny a čo sme oznámili bolo, že EXT2 už prešiel do kategórie zastaraných a tiež, že použitie starého NTFS ovládača bude ponechané bokom v prospech ovládač vyvinutý spoločnosťou Paragon Software.
teraz, v posledných správach o nových funkciách, ktoré nám Linux 6.9 predstaví, je to Táto verzia jadra prinesie výrazné zlepšenie času spustenia pre používateľov spravujúcich systémy s veľkým množstvom pamäte RAM, najmä tie, ktoré Využívajú stránky HugeTLB. Výsledkom je značné skrátenie času potrebného na inicializáciu týchto stránok počas procesu zavádzania systému.
A zmena pridaná v Linuxe 6.9 umožní systémom s veľkým počtom stránok HugeTLB zaznamenať značné zníženie v čase začiatku. Napríklad na 2TB systémoch, kde je inicializovaných 1800 1GB stránok, ktoré v súčasnosti to trvá 1 až 2 sekundy z celkového počtu 10 sekúnd, čo je v dnešnej dobe nepochybne značné zlepšenie. Podobne na hostiteľoch Intel s kapacitou 12 TB, kde sa inicializuje 11 776 stránok s veľkosťou 1 GB, čo môže trvať viac ako minútu, zaznamenáte výrazné skrátenie týchto časov spustenia.
Tieto zálohy boli možné vďaka oddanej práci vývojára Linuxu Gang Li z Bytedance, ktorý implementoval sériu opráv, ktoré prešli viacerými kontrolami, aby sa zabezpečilo efektívne vykonávanie. Existujúca infraštruktúra jadra, ako napr padata_do_multithreaded, bol použitý s minimálnymi úpravami na dosiahnutie týchto výsledkov.
Dve aktualizácie vo verzii 6…
– Opravená potenciálna chyba v together_bootmem_prealloc_node
Implementácia padata_do_multithreaded zabezpečuje, že každý
Úloha together_bootmem_prealloc_node spracováva uzol. Avšak popísané API
v komentári padata_do_multithreaded označuje, že aj padata_do_multithreaded
K úlohe môžete priradiť viacero uzlov together_bootmem_prealloc_node.Aby ste sa vyhli možným chybám z budúcich zmien padata_do_multithreaded,
Together_bootmem_prealloc_parallel je predstavený na zabalenie
together_bootmem_prealloc_node.
Výhody z týchto vylepšení sú najmä pozoruhodné v prostrediach, kde sú dostupnosť služby a doba prevádzkyschopnosti systému kritické, ako v prípade hyperscalerov a veľkých organizácií, ktoré spravujú veľmi veľké servery. Skrátenie času spustenia počas reštartov je veľkým prínosom na zabezpečenie rýchlejšej a efektívnejšej prevádzky.
Okrem toho, Za zmienku stojí aj ďalšia zmena ktoré boli zahrnuté v Linuxe 6.9, čo je záplata od skúseného linuxového inžiniera zo spoločnosti Intel, ktorá zavádza vylepšenú techniku na obmedzenie šírky pásma pamäte pri aktualizáciách vyrovnávacej pamäte x86, podobný tomu, ktorý používa Intel v procesoroch RDT a AMD EPYC s kódom resctrl.
Autor patchu uvádza, že:
Slučka spätnej väzby MBA_mbps zvyšuje škrtenie, keď skupina využíva väčšiu šírku pásma, ako používateľ nastavil v súbore schémy, a znižuje škrtenie, keď je pod cieľom.
Stojí za zmienku, že nová technika na obmedzenie šírky pásma pamäte je navrhnutý tak, aby efektívnejšie zvládal pracovné zaťaženie s nerovnomernými úrovňami zaťaženias, čím sa vyhnete zbytočným sankciám, ktoré sa vyskytli v predchádzajúcich verziách jadra.
Aby sa predišlo zbytočným výkyvom v zrýchlení v každej iterácii, príznak „delta_comp“ sa používa na označenie skutočných zmien šírky pásma, ktoré sa majú zaznamenať v ďalšej iterácii v „delta_bw“. Škrtenie sa zníži iba vtedy, ak je aktuálna šírka pásma plus delta_bw pod cieľovou hodnotou používateľa.
Ako také sa uvádza, že Algoritmus funguje dobre pri záťaži s konštantnou šírkou pásma, ale môže zlyhať, ak sa pracovné zaťaženie zmení práve vtedy, keď sa zmení škrtenie. Na vyriešenie tohto problému bola implementovaná jednoduchšia technika, ktorá vypočítava potenciálne zvýšenie šírky pásma, ak sa škrtenie zníži na najbližšiu vyššiu úroveň, čím sa zabezpečí, že pred znížením škrtenia zostane pod cieľovou hodnotou používateľa.
Ak ste záujem dozvedieť sa o tom viac, podrobnosti si môžete prečítať v nasledujúcich odkazoch:
- Hugetlb: Paralelizácia spustenia stránky Hugetlb pri spustení
- Implementácia novej techniky obmedzenia MBA_mbps