jemalloc 5.3.1

Majdnem négy év szünet után (lásd "jemalloc mindent») az allokátor 5.3.1. pontjának felszabadítása megtörtént jemalloc – a malloc(3) egy olyan implementációja, amely a fragmentáció megelőzésére és a skálázható párhuzamos működés támogatására helyezi a hangsúlyt.

Az új kiadás több mint 390 commitot tartalmaz hibajavításokkal, új funkciókkal, teljesítményoptimalizálással és hordozhatósági fejlesztésekkel.

A projekt C nyelven íródott és BSD licenc alatt kerül terjesztésre.

Új funkciók:

  • pvalloc(3) támogatás.
  • dupla felszabadulás észlelve a hibakeresési buildben;
  • Hozzáadott --enable-pageid fordítási opció a memóriához leképezett annotáció engedélyezéséhez.
  • Hozzáadva a prof_bt_max futásidejű paraméter a profilozás maximális veremmélységének szabályozására;
  • Hozzáadott fordítási opció: --enable-force-getenv a getenv használatához a secure_getenv helyett;
  • Hozzáadva a --disable-dss fordítási opció az sbrk(2) használatának letiltásához;
  • Hozzáadva a tcache_ncached_max fordítási opció a szál gyorsítótárában lévő elemek számának szabályozására.
  • Hozzáadva a calloc_madvise_threshold futásidejű paraméter, amely meghatározza, hogy a kernel vagy a memset kerül-e felhasználásra a lefoglalt memóriablokkok nullázásához a calloc hívásakor;
  • Hozzáadva a --disable-user-config fordítási idejű kapcsoló, amely letiltja a konfigurációk olvasását az /etc/malloc.conf fájlból vagy a MALLOC_CONF környezeti változóból futásidőben.
  • Hozzáadtuk a disable_large_size_classes futásidejű paramétert az új méretszámítási algoritmus engedélyezéséhez, amely minimalizálja a memória terhelését nagy memóriablokkok lefoglalásakor, azaz ha a méret >= 4 * PAGE;
  • Engedélyeztem a process_madvise használatát, és hozzáadtam a process_madvise_max_batch futásidejű paramétert, amely szabályozza az egyes madvise "batch"-ekben lévő memóriarégiók maximális számát;
  • mallctl interfészek hozzáadva:
    • opt.prof_bt_max;
    • arena.
    • thread.tcache.max a jelenlegi szál tcache_max értékének módosításához és lekéréséhez;
    • thread.tcache.ncached_max.write és thread.tcache.ncached_max.read_sizeclass használatával módosíthatja és lekérheti az aktuális szál ncached_max értékét;
    • arenas.hugepage a használt hugepage méret visszaadásához, amelyet a malloc statisztikákba is exportálunk;
    • approximate_stats.active az aktív bájtok aktuális mennyiségének hozzávetőleges értékének lekéréséhez, amelyet nem szabad összehasonlítani más lekért statisztikákkal.
  • Számos hibát is kijavítottak, és a dokumentáció is javult.

Forrás: linux.org.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