jemalloc 5.3.1

Deyarli to'rt yillik tanaffusdan so'ng (qarang "jemalloc hamma narsa») ajratuvchining 5.3.1 versiyasi chiqarildi jemalloc – malloc(3) ning parchalanishning oldini olish va masshtablanadigan parallellikni qo'llab-quvvatlashga urg'u beradigan amalga oshirilishi.

Yangi nashrda xatolarni tuzatish, yangi funksiyalar, ishlashni optimallashtirish va ko'chma yaxshilanishlar bilan birga 390 dan ortiq commitlar mavjud.

Loyiha C tilida yozilgan va BSD litsenziyasi ostida tarqatilgan.

Yangi xususiyatlar:

  • pvalloc(3) ni qo'llab-quvvatlash.
  • disk raskadrovka tizimida ikki marta bepul aniqlandi;
  • Xotira xaritasidagi annotatsiyani yoqish uchun --enable-pageid kompilyatsiya opsiyasi qo'shildi.
  • Profillash uchun maksimal stek chuqurligini boshqarish uchun prof_bt_max ish vaqti parametri qo'shildi;
  • secure_getenv o'rniga getenv dan foydalanish uchun --enable-force-getenv kompilyatsiya opsiyasi qo'shildi;
  • sbrk(2) dan foydalanishni o'chirish uchun --disable-dss kompilyatsiya opsiyasi qo'shildi;
  • Mavzu keshidagi elementlar sonini boshqarish uchun tcache_ncached_max kompilyatsiya opsiyasi qo'shildi.
  • calloc chaqirilganda ajratilgan xotira bloklarini nolga tenglashtirish uchun yadro yoki memset ishlatilishini aniqlash uchun calloc_madvise_threshold ish vaqti parametri qo'shildi;
  • Ish vaqtida /etc/malloc.conf faylidan yoki MALLOC_CONF muhit o'zgaruvchisidan konfiguratsiyalarni o'qishni o'chirish uchun --disable-user-config compile-time opsiyasi qo'shildi.
  • Katta hajmdagi xotira bloklarini ajratishda, ya'ni hajmi >= 4 * PAGE bilan xotira yukini minimallashtiradigan yangi mavjud o'lchamni hisoblash algoritmini yoqish uchun ish vaqti parametri disable_large_size_classes qo'shildi;
  • process_madvise dan foydalanishni yoqdi va har bir madvise "batch" da maksimal xotira mintaqalarini boshqarish uchun process_madvise_max_batch ish vaqti parametrini qo'shdi;
  • mallctl interfeyslari qo'shildi:
    • opt.prof_bt_max;
    • arena.
    • thread.tcache.max faylini o'zgartirish va joriy oqimning tcache_max qiymatini olish uchun;
    • thread.tcache.ncached_max.write va thread.tcache.ncached_max.read_sizeclass funksiyalarini o'zgartirib, joriy oqimning ncached_max qiymatini olish uchun;
    • arenas.hugepage ishlatilgan hugepage hajmini qaytarish uchun ishlatiladi, shuningdek, malloc statistikasiga eksport qilinadi;
    • approximate_stats.active funksiyasidan foydalanib, joriy faol baytlar miqdorining taxminiy qiymatini oling, bu boshqa olingan statistika bilan taqqoslanmasligi kerak.
  • Ko'pgina xatolar ham tuzatildi va hujjatlar yaxshilandi.

Manba: linux.org.ru

DDoS himoyasi, VPS VDS serverlari bo'lgan saytlar uchun ishonchli hosting sotib oling 🔥 DDoS himoyasi, VPS VDS serverlari bilan ishonchli veb-sayt xostingini sotib oling | ProHoster