Linux 6.17: Jelentős memória-kezelési fejlesztések és a DAMON_STAT újdonságai

Segítséget kaptál? Szívesen töltöd itt az idődet? Visszajársz hozzánk? Támogasd a munkákat: Ko-fi és Paypal!

kami911 képe

A Linux 6.17 fejlesztési ciklusának részeként a hét folyamán beolvadtak a memória-kezelési („MM”) alrendszert érintő frissítések, amelyek több teljesítménybeli és funkcionalitásbeli újítást is hoznak a modern szerver- és felhőalapú környezetek számára. A DAMON_STAT az egyik legérdekesebb újítás a Linux 6.17-ben: ez egy új alkomponens a DAMON (Data Access MONitor) rendszerhez, amely célja az, hogy egyszerűbbé és gyakorlatiasabbá tegye a memóriahozzáférések figyelését termelési környezetekben is. A DAMON_STAT egyszerűbb konfigurációs lehetőségeket és könnyebb használhatóságot kínál, miközben pontos képet ad a folyamatok memóriahasználati mintázatairól.

Teljesítményjavulások: mremap() és mprotect()

Az új verzióban jelentős optimalizálások történtek a nagy foliókkal (large folios) való műveletek esetében:

  • Az mremap() hívás optimalizálása esetén 37%-kal csökkent a végrehajtási idő egy memset + mremap + munmap teszt során.
  • Az mprotect() nagy foliókra történő alkalmazása esetén pedig akár háromszoros gyorsulás is elérhető a korábbi verzióhoz képest.

Ez különösen fontos lehet olyan nagy adathalmazokkal dolgozó alkalmazásoknál, mint például adatbázis-kezelők vagy gépi tanulási rendszerek.

Per-VMA zárak és alacsonyabb késleltetés

Egy másik figyelemre méltó fejlesztés a per-VMA (Virtual Memory Area) zárolás bevezetése, különösen a /proc/[pid]/maps fájl olvasásához. Ez a megközelítés csökkenti a zárolási konfliktusokat nagy memóriahasználatú rendszerekben, bizonyos esetekben több mint felére csökkentve a válaszidőt.

NUMA támogatás és memóriavisszanyerés új módszerekkel

  • Egy új, önálló értesítési mechanizmus került bevezetésre a NUMA (Non-Uniform Memory Access) csomópontokon bekövetkező memóriaállapot-változások kezelésére.
  • Lehetőség nyílik NUMA-csomópont szintű proaktív memóriavisszanyerésre (proactive memory reclaim), ami alternatívát kínál a meglévő memcg-alapú visszanyeréssel szemben, így jobban hangolható a memóriahasználat heterogén rendszerekben.

DDR5 szervermemória és a jövő kompatibilitása

Bár nem kifejezetten az MM-patch része, érdemes megemlíteni, hogy ezek a fejlesztések jól illeszkednek a DDR5-ös szervermemóriák terjedéséhez is, amelyek jelentősen megnövelt sávszélességet és kapacitást kínálnak. A Linux memória-alrendszerének optimalizálása ezzel párhuzamosan biztosítja a modern szerverarchitektúrák hatékony kihasználását.

További információ

A változások részletei megtalálhatók Andrew Morton fejlesztői pull requestjében, amelyet a Linux közösség számára nyitott meg, és amely a memória-alrendszer fejlődését irányítja.