Megjelent a jemalloc 5.3 memóriakezelő könyvtár.

Megjelent a jemalloc memóriakezelő könyvtár 5.4.0-s kiadása. A malloc függvények egy alternatív implementációját kínálja, amely a fragmentáció csökkentésére és a többprocesszoros rendszereken való futtatásra van optimalizálva. A többmagos rendszerek zárolási problémáinak megoldására a jemalloc minden CPU-maghoz saját, izolált memória-allokációs területet használ, lehetővé téve a lineáris skálázhatóságot a szálak számának növekedésével.

2025 júniusában a projekt szerzője leállította a karbantartást és archiválási módba helyezte a jemalloc repositoryt, de idén márciusban a Meta folytatta a fejlesztést, amely infrastruktúrájában a jemalloc-ot használja. A könyvtárat eredetileg FreeBSD-re fejlesztették, és 2005 óta alapértelmezetten ezen az operációs rendszeren használják. A könyvtár kódja C nyelven íródott és BSD licenc alatt kerül terjesztésre.

A változások között:

  • A tcache (Thread Local Cache) feltöltésének és törlésének, valamint a memória-allokáció diszpécserének logikája egyszerűsödött.
  • A Page Allocator Classic (PAC) és a HPA (Huge Page Allocator) memórialap-foglalókat egységesítették. A vtable-en (PAI vtable) keresztüli közvetett hívások összetett mechanizmusát eltávolították.
  • A karbantartás és a platformbővítés egyszerűsítése érdekében minden platformfüggő művelet külön header fájlokba kerül áthelyezésre.
  • A mallctl parancsok kiosztása egyszerűsödött, és a statisztikák generálására és megjelenítésére szolgáló infrastruktúrát újratervezték.
  • Hozzáadtuk az EXTENT_ALLOC_FLAG_PINNED jelzőt, amely lehetővé teszi a nem előzetesen felhasználható memória-leképezési régiók, például a HugeTLB oldalak megjelölését prioritási újrafelhasználásra. Új mallctl interfészek kerültek hozzáadásra a rögzített memóriahasználati statisztikák lekéréséhez: stats.pinned, stats.arenas..pinned
  • Szinkronizált malloc statisztikai tartalom ember által olvasható és JSON formátumban.
  • Eltávolítottam az elavult lg_tcache_nslots_mul, tcache_nslots_small_min, tcache_nslots_small_max, tcache_nslots_large, tcache_gc_delay_bytes, lg_tcache_flush_small_div és lg_tcache_flush_large_div paramétereket.

Forrás: opennet.ru

Vásároljon megbízható tárhelyet DDoS védelemmel, VPS VDS szerverekkel rendelkező webhelyekhez 🔥 Vásároljon megbízható weboldal tárhelyet DDoS védelemmel, VPS VDS szerverekkel | ProHoster