jemalloc 5.3.1

Po takmer štyroch rokoch pauzy (pozri „jemalloc všetko“) sa vydala verzia 5.3.1 alokátora jemalloc – implementácia malloc(3), ktorá sa zameriava na predchádzanie fragmentácii a podporu škálovateľnej paralelnosti.

Nová verzia obsahuje viac ako 390 commitov s opravami chýb, novými funkciami, optimalizáciou výkonu a vylepšenou prenositeľnosťou.

Projekt je napísaný v jazyku C a je distribuovaný pod licenciou BSD.

Nové možnosti:

  • podpora pvalloc(3).
  • detekcia dvojitého uvoľnenia pamäte v debugovacej zostave;
  • pridaná možnosť kompilácie —enable-pageid pre povolenie anotácie zobrazenej pamäte.
  • pridaný parameter runtime prof_bt_max na kontrolu maximálnej hĺbky zásobníka pre profilovanie;
  • pridaná možnosť kompilácie —enable-force-getenv pre používanie getenv namiesto secure_getenv;
  • pridaná možnosť kompilácie —disable-dss pre vypnutie použitia sbrk(2);
  • pridaná možnosť kompilácie tcache_ncached_max na kontrolu počtu prvkov v cache vlákien.
  • pridaný parameter runtime calloc_madvise_threshold na určenie, či sa použije kernel alebo memset na nulovanie pridelených blokov pamäte pri volaní calloc;
  • pridaná možnosť kompilácie —disable-user-config pre vypnutie čítania v čase behu konfigurácií z súboru /etc/malloc.conf alebo z premennej prostredia MALLOC_CONF;
  • pridaný parameter runtime disable_large_size_classes na zaistenie fungovania nového algoritmu výpočtu dostupnej veľkosti, ktorý minimalizuje režijné náklady na pamäť pri alokácii veľkých blokov pamäte, teda s veľkosťou >= 4 * PAGE;
  • povolené používanie process_madvise a pridaný parameter runtime process_madvise_max_batch na kontrolu maximálneho počtu pamäťových regiónov v každej „dávke“ madvise;
  • pridané rozhrania mallctl:
    • opt.prof_bt_max;
    • arena.. pre zmenu a získavanie mien „arény“;
    • thread.tcache.max pre zmenu a získanie tcache_max aktuálneho vlákna;
    • thread.tcache.ncached_max.write a thread.tcache.ncached_max.read_sizeclass pre zmenu a získanie ncached_max aktuálneho vlákna;
    • arenas.hugepage na vrátenie použitej veľkosti hugepage, tiež exportovanej do štatistiky malloc;
    • approximate_stats.active pre získanie približného údaju o aktuálnom objeme aktívnych bajtov, ktorý by sa nemal porovnávať s inými získanými štatistikami.
  • tiež opravené mnohé chyby a vylepšená dokumentácia.

Zdroj: linux.org.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster