ËshtĂ« publikuar biblioteka e menaxhimit tĂ« memories jemalloc 5.3

ËshtĂ« prezantuar versioni 5.4.0 i bibliotekĂ«s sĂ« menaxhimit tĂ« memories jemalloc, e cila ofron njĂ« implementim alternativ tĂ« funksioneve malloc, tĂ« optimizuar pĂ«r tĂ« ulur fragmentimin dhe pĂ«r punĂ« nĂ« sisteme shumĂ«procesorike. PĂ«r tĂ« zgjidhur problemet me bllokimet nĂ« sistemet shumĂ«bĂ«rthamore, nĂ« jemalloc pĂ«rdoret njĂ« zonĂ« e veçuar e alokimit tĂ« memories pĂ«r çdo bĂ«rthamĂ« CPU, gjĂ« qĂ« mundĂ«son shkallĂ«zim linear me rritjen e numrit tĂ« rrjedhave.

Në qershor 2025, autori i projektit ndaloi mirëmbajtjen dhe e kaloi depozitën e jemalloc në regjim arkivimi, por në mars të këtij viti zhvillimi u rifillua nga kompania Meta, e cila përdor jemalloc në infrastrukturën e saj. Fillimisht, biblioteka u zhvillua për FreeBSD dhe përdoret në këtë OS si parazgjedhje që nga viti 2005. Kodi i bibliotekës është shkruar në C dhe shpërndahet sipas licencës BSD.

Ndër ndryshimet:

  • ËshtĂ« thjeshtuar logjika e mbushjes dhe pastrimit tĂ« tcache (Thread Local Cache), si edhe dispatchimi i alokimit tĂ« memories.
  • JanĂ« unifikuar alokatorĂ«t e faqeve tĂ« memories PAC (Page Allocator Classic) dhe HPA (Huge Page Allocator). ËshtĂ« hequr mekanizmi i ndĂ«rlikuar i thirrjeve indirekte pĂ«rmes vtable (PAI vtable).
  • PĂ«r tĂ« thjeshtuar mirĂ«mbajtjen dhe zgjerimin e platformave, tĂ« gjitha operacionet e varura nga platforma janĂ« zhvendosur nĂ« skedarĂ« header tĂ« veçantĂ«.
  • ËshtĂ« thjeshtuar dispatchimi i komandave mallctl, si edhe Ă«shtĂ« ripunuar infrastruktura pĂ«r gjenerimin dhe paraqitjen e statistikave.
  • ËshtĂ« shtuar flamuri EXTENT_ALLOC_FLAG_PINNED, i cili lejon shĂ«nimin e zonave tĂ« pamapueshme tĂ« memory mapping qĂ« nuk mund tĂ« zhvendosen, si p.sh. faqet HugeTLB, pĂ«r ripĂ«rdorim prioritar. PĂ«r tĂ« marrĂ« statistika mbi pĂ«rdorimin e memories sĂ« fiksuar, janĂ« shtuar ndĂ«rfaqe tĂ« reja mallctl: stats.pinned, stats.arenas..pinned, stats.arenas..extents..npinned, stats.arenas..extents..pinned_bytes dhe stats.arenas..mutexes.extents_pinned.{counter} .
  • PĂ«rmbajtja e statistikave malloc Ă«shtĂ« sinkronizuar nĂ« formatet e lexueshme dhe JSON.
  • JanĂ« hequr parametrat e vjetĂ«ruar lg_tcache_nslots_mul, tcache_nslots_small_min, tcache_nslots_small_max, tcache_nslots_large, tcache_gc_delay_bytes, lg_tcache_flush_small_div dhe lg_tcache_flush_large_div.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster