A Linux 7.0 merge window keretében elkészült a Memory Management alrendszer újabb nagy fejlesztési csomagja: Andrew Morton február 11-én küldte be a beolvasztási kérelmet, Linus Torvalds pedig be is emelte a 7.0-rc1 kernel fő ágába. A friss fejlesztési csomag 325 patchet tartalmaz, és elsősorban teljesítményjavításokra, kódkarbantartásra, illetve a régóta halasztott, nehezebben karbantartható részek átszervezésére helyezi a hangsúlyt.
Tartalomjegyzék

Tömörített writeback támogatás a zram-hoz, gyorsabb hugepage előkészítés
Az egyik legérdekesebb újdonság a zramhoz érkező tömörített writeback támogatás. A cél az, hogy a háttértárra történő kiírás ne kényszerüljön feleslegesen tömörítetlen formára, hanem megmaradjon a tömörített adatkezelés logikáján belül. Ennek a gyakorlati nyeresége a fejlesztők szerint alacsonyabb CPU-terhelés és jobb energiahatékonyság lehet, ami különösen a hordozható eszközöknél jelenthet előnyöket.
Ugyanebben a kernel patch csomagban egy további, teljesítményspecifikus fejlesztéssorozat a hugepage-ek nullázását dolgozza át. Ennek lényege, hogy a 2 MB-os és nagyobb lapok előkészítésekor a törlés ne széttördelt, különálló műveletekből álljon, hanem folytonos címtartományokon menjen végig, ahol csak lehet, kötegelt megoldással. A karbantartói magyarázat szerint ez jobban alkalmazható például a hardveres előtöltésre, és több architektúrán a CPU is kedvezőbb stratégiát választhat, mert nem apró, ismétlődő írásokat kap, hanem nagyobb egységekben végzett műveletet érzékel. A változtatás hatását a demand faulting teszt is visszaigazolja:

A mellékelt mérés szerint ez az első hozzáféréskor végzett memória-előkészítés érezhetően gyorsabb lett egy 64 GB-os tartományon. 2 MB-os lapméretnél az áteresztés kb. 11,76 GB/s-ról 25,34 GB/s-ra nőtt, ami nagyjából 115% javulás. 1 GB-os lapoknál 24,85 GB/s-ról 39,22 GB/s-ra emelkedett, ami közel 58%-al jobb eredmény, és egy másik 1 GB-os tesztesetben 52,73 GB/s körüli értéket mutat a táblázat, ott bő 112% a növekedés.
Példaként azt említik, hogy egyes AMD Zen változatok nagy kiterjedésnél csökkenthetik a felesleges cacheline-foglalásokat, ami együtt hozhat nagyobb sávszélességet és kevesebb hasznos adat kiszorítását a gyorsítótárból.
Gyorsabb nagyméretű folio kiosztás, modernebb swapin útvonal, bővülő architektúra-támogatás a kernelben
A Memory Management csomag egyik látványos eleme a nagy méretű foliok kiosztásának felgyorsítása. A kísérő leírás alapján a fejlesztők több olyan lépést vettek ki az útvonalból, amely eddig csak fölösleges terhelést jelentett, így a nagy foliok létrehozása számottevően kevesebb időt igényel. A közölt mérési példa jól mutatja a különbséget: 120 darab 1 GB-os folió kiosztása 3,605 másodpercről 0,431 másodpercre csökkent.
Szintén ide tartozik a swap kód rendbetétele, ahol a swapin útvonal egységesítése és néhány gyengébben működő, régi megoldás elhagyása került előtérbe. A kódkarbantartás mellett itt is konkrét gyorsulást említenek: a beszámoló szerint egy Redis benchmarkban 22%-os javulást mértek, ami jól jelzi, hogy a letisztultabb, kevesebb kerülőlépéssel dolgozó útvonal néha közvetlen teljesítménynövekedést tesz lehetővé.
A csomagban egy kifejezetten architektúrákat érintő bővítés is szerepel: a PT_RECLAIM több 64 bites platformon is elérhetővé válik, például Alpha, LoongArch, MIPS, Parisc és UM esetén. A beolvasztási kérelem a lehetséges összeakadásokra is kitér, és jelzi, mely változtatások ütközhetnek más fejlesztői fák módosításaival. A feloldáshoz a linux-nextben már alkalmazott megoldásokat is felsorolja.

