Төрт жылға жуық үзілістен кейін (қараңыз «jemalloc бәрі») бөлгіштің 5.3.1 нұсқасы шығарылды jemalloc – фрагментацияның алдын алуға және масштабталатын параллельділікті қолдауға баса назар аударатын malloc(3) іске асыруы.
Жаңа шығарылымда қателерді түзету, жаңа мүмкіндіктер, өнімділікті оңтайландыру және тасымалдауды жақсартумен бірге 390-нан астам коммит бар.
Жоба C тілінде жазылған және BSD лицензиясы бойынша таратылады.
Жаңа мүмкіндіктер:
- pvalloc(3) қолдауы.
- отладка құрастыруында қос бос орын анықталды;
- Жадпен салыстырылған аннотацияны қосу үшін --enable-pageid компиляция опциясы қосылды.
- Профильдеу үшін стектің максималды тереңдігін басқару үшін prof_bt_max орындалу уақыты параметрі қосылды;
- secure_getenv орнына getenv пайдалану үшін --enable-force-getenv компиляция опциясы қосылды;
- sbrk(2) функциясын пайдалануды өшіру үшін --disable-dss компиляция опциясы қосылды;
- Ағын кэшіндегі элементтер санын басқару үшін tcache_ncached_max компиляция опциясы қосылды.
- calloc функциясын шақырған кезде бөлінген жад блоктарын нөлге келтіру үшін ядро немесе memset қолданылатынын анықтау үшін calloc_madvise_threshold орындалу уақыты параметрі қосылды;
- Орындалу уақытында /etc/malloc.conf файлынан немесе MALLOC_CONF орта айнымалысынан конфигурацияларды оқуды өшіру үшін --disable-user-config компиляция уақыты опциясы қосылды.
- Үлкен жад блоктарын бөлген кезде, яғни өлшемі >= 4 * PAGE кезінде жадтың үстеме шығынын азайтатын жаңа қолжетімді өлшемді есептеу алгоритмін қосу үшін disable_large_size_classes орындалу уақыты параметрі қосылды;
- process_madvise пайдалануын қосты және әрбір madvise "топтамасындағы" жад аймақтарының максималды санын басқару үшін process_madvise_max_batch орындау уақыты параметрін қосты;
- mallctl интерфейстері қосылды:
- opt.prof_bt_max;
- арена.
- thread.tcache.max параметрін өзгертіп, ағымдағы ағынның tcache_max мәнін алу үшін;
- thread.tcache.ncached_max.write және thread.tcache.ncached_max.read_sizeclass функцияларын пайдаланып, ағымдағы ағынның ncached_max мәнін өзгертіңіз және алыңыз;
- arenas.hugepage пайдаланылған hugepage өлшемін қайтарады, сонымен қатар malloc статистикасына экспортталады;
- approximate_stats.active функциясын басқа алынған статистикамен салыстыруға болмайтын белсенді байттардың ағымдағы санының шамамен алынған мәнін алу үшін пайдаланыңыз.
- Көптеген қателер де түзетіліп, құжаттама жақсартылды.
Ақпарат көзі: linux.org.ru
