Linux 6.9 tarjoaa nopeamman käynnistyksen suurissa järjestelmissä, joissa on paljon RAM-muistia

Tux, Linux-ytimen maskotti

Linux-ydin on Linux-käyttöjärjestelmien (OS) selkäranka, ja se on perusrajapinta tietokoneen laitteiston ja sen prosessien välillä.

Muutama päivä sitten Jaamme täällä blogissa uutisen yhdestä muutoksesta Mitä voimme löytää käynnistyksessä Linux-ytimen 6.9, joka on parhaillaan kehitteillä ja useita muutoksia on jo tehty tiedoksi ja ilmoitimme, että EXT2 on jo siirtynyt vanhentuneiden luokkaan ja myös, että vanhan NTFS-ajurin käyttö jätetään sivuun. Paragon Softwaren kehittämä ohjain.

nyt, viimeisimmissä uutisissa Linux 6.9:n meille tarjoamista uusista ominaisuuksista Tämä ytimen versio parantaa merkittävästi käynnistysaikaa käyttäjille, jotka hallitsevat järjestelmiä, joissa on suuri määrä RAM-muistia, erityisesti sellaisia, joissa He käyttävät HugeTLB-sivuja. Tämä lyhentää huomattavasti aikaa, joka kuluu näiden sivujen alustamiseen järjestelmän käynnistyksen aikana.

Aiheeseen liittyvä artikkeli:
Paragon julkaisi NTFS-toteutuksen Linux-ytimelle

Ja Linux 6.9:ään lisätty muutos mahdollistaa järjestelmien, joissa on suuri määrä HugeTLB-sivuja, kokea huomattavan vähennyksen aloitusaikana. Esimerkiksi 2 Tt:n järjestelmissä, joissa alustetaan 1800 1 Gt sivua, mikä tällä hetkellä ne kestävät 1–2 sekuntia 10 sekunnin kokonaismäärästä, mikä on epäilemättä huomattava parannus näinä aikoina. Vastaavasti 12 Tt:n Intel-isännissä, joissa alustetaan 11 776 1 Gt:n sivua, mikä voi kestää yli minuutin, näet näiden käynnistysaikojen lyhenevän merkittävästi.

Nämä edistykset Ne ovat mahdollisia Linux-kehittäjä Gang Li of Bytedancen omistautuneen työn ansiosta, jotka ottivat käyttöön sarjan korjaustiedostoja, jotka käytiin läpi useita tarkistuksia varmistaakseen tehokkaan suorituskyvyn. Olemassa oleva ytimen infrastruktuuri, kuten padata_do_multithreaded, käytettiin pienin muutoksin näiden tulosten saavuttamiseksi.

Kaksi päivitystä v6:ssa…

– Korjattu mahdollinen bugi kohteessa together_bootmem_prealloc_node
Padata_do_multithreaded-toteutus varmistaa, että jokainen
Yhteys_bootmem_prealloc_node-tehtävä käsittelee solmun. Kuitenkin API kuvattu
kommentissa padata_do_multithreaded osoittaa, että padata_do_multithreaded myös
Voit määrittää tehtävälle useita solmuja together_bootmem_prealloc_node.

Välttääksesi mahdolliset virheet tulevista padata_do_multithreaded-muutoksista,
together_bootmem_prealloc_parallel otetaan käyttöön käärimään
together_bootmem_prealloc_node.

Edut näistä parannuksista ovat erityisesti huomattava ympäristöissä, joissa palvelun saatavuus ja järjestelmän käytettävyys ovat kriittisiä, kuten hyperskaalaajien ja suurten organisaatioiden tapauksessa, jotka hallitsevat erittäin suuria palvelimia. Käynnistysajan lyhenemisestä uudelleenkäynnistyksen aikana on suurta hyötyä nopeamman ja tehokkaamman käytettävyyden varmistamiseksi.

Sen lisäksi On myös syytä mainita toinen muutos jotka on sisällytetty Linux 6.9:ään, joka on Intelin kokeneen Linux-insinöörin korjaus, joka esittelee parannetun tekniikan muistin kaistanleveyden rajoittamiseksi x86-välimuistin päivityksessä, joka on samanlainen kuin Intelin käyttämä RDT- ja AMD EPYC -suorittimissa resctrl-koodilla.

Korjauksen kirjoittaja mainitsee, että:

MBA_mbps-palautesilmukka lisää kuristusta, kun ryhmä käyttää enemmän kaistanleveyttä kuin käyttäjä on määrittänyt skeematiedostossa, ja vähentää kuristusta, kun se on tavoitteen alapuolella.

On syytä mainita, että uusi tekniikka rajoittaa muistin kaistanleveyttä on suunniteltu käsittelemään tehokkaammin työkuormia epätasaisilla kuormituksellas, välttäen tarpeettomia rangaistuksia, joita esiintyi ytimen aiemmissa versioissa.

Tarpeettomien nopeudenvaihteluiden välttämiseksi kussakin iteraatiossa "delta_comp"-lippua käytetään osoittamaan todelliset muutokset kaistanleveydessä, jotka tallennetaan seuraavassa iteraatiossa "delta_bw". Kuristusta pienennetään vain, jos nykyinen kaistanleveys plus delta_bw on käyttäjän tavoitteen alapuolella.

Sellaisena se mainitaan Algoritmi toimii hyvin jatkuvalla kaistanleveyden työkuormilla, mutta se voi epäonnistua, jos työmäärä muuttuu juuri kun kuristus muuttuu. Tämän ratkaisemiseksi otettiin käyttöön yksinkertaisempi tekniikka, joka laskee mahdollisen kaistanleveyden lisäyksen, jos kuristusta vähennetään seuraavaksi korkeammalle tasolle, varmistaen, että se pysyy käyttäjän tavoitteen alapuolella ennen kuin kuristusta vähennetään.

Jos olet kiinnostunut tietämään asiasta lisää, voit tutustua yksityiskohtiin seuraavista linkeistä: