Sen jälkeen, kun muistifoliot epäonnistuivat Linux 5.15:een, tämä matalan tason muutos ytimen muistin hallintakoodiin, jolla on mahdollisia suorituskykyvaikutuksia, on tulossa Linux 5.16:een.
Linux 5.16:n yhdistämisikkunan edessä, joka saattaa avautua heti huomenna, Matthew Wilcox lähetti vetopyyntönsä folioiden tuomisesta ytimeen. Tässä on tärkein ote vetopyynnöstä niille, jotka eivät tunne folioita tai jotka ovat unohtaneet yksityiskohdat kuukausien aikana, jolloin tämä ominaisuus on ollut työn alla:
Kaiken tämän vaikeutumisen tarkoitus on salli tiedostojärjestelmien ja sivuvälimuistin hallita muistia suurempina paloina kuin PAGE_SIZE. Alkuperäinen suunnitelma oli käyttää yhdistelmäsivuja kuten THP, mutta törmäsin ongelmiin joidenkin toimintojen kanssa, jotka odottivat vain pääsivua, kun taas toiset odottavat tarkan sivun sisältävän tietyn tavun. Foliotyyppi sallii funktion ilmoittaa, että se odottaa vain pääsivua. Melkein sattumalta, tämä antaa meille mahdollisuuden poistaa erilaisia kutsuja VM_BUG_ON(PageTail(sivu)) ja composed_head().
Tämä vetopyyntö muuntaa vain osia ydin-MM:stä ja sivun välimuistista. 5.17:lle aiomme muuntaa erilaisia tiedostojärjestelmiä (XFS ja AFS ovat valmiita; muut tiedostojärjestelmät voivat onnistua) ja myös muuntaa enemmän MM:ää ja sivuvälimuistia folioiksi. 5.18:lle monisivuisten folioiden pitäisi olla valmiita.
Monisivuiset foliot tarjoavat joitain parannuksia joihinkin työkuormiin. 80 prosentin voitto on todellinen, mutta näyttää olevan keinotekoinen vertailukohta (postgres-käynnistys, joka ei ole vakava työtaakka). Todelliset työmäärät (esim. ytimen rakentaminen, postgres-ohjelman suorittaminen vakaassa tilassa jne.) näyttävät hyötyvän 0-10 %. En ole kuullut suorituskyvyn heikkenemisestä tämän sarjan seurauksena. Kukaan ei ole tehnyt mitään vakavaa suorituskyvyn viritystä; Uskon, että Readahead-algoritmin säätäminen voisi tarjota mielenkiintoisempia voittoja. On myös muita paikkoja, joissa voimme luoda suuria folioita, mutta tällä hetkellä emme tee, kuten kirjoituksia, jotka ovat suurempia kuin PAGE_SIZE.
Loppukäyttäjille se tarkoittaa mahdollisia suorituskykyetuja ja enemmän. Seuraava ydin vapauttaa muistifolioiden ympärillä olevat toiminnot rakennetaan.
Katso lisätietoja poistopyynnöstä. Nyt nähdään, päättääkö Linus Torvalds tehdä nämä ~2 000+ muutosriviä vai esitetäänkö lisäystä vastaan muita uusia/uusitettuja vastalauseita.