Facebook a reluat dezvoltarea bibliotecii de gestionare a memoriei jemalloc

Compania Meta* a anunțat reluarea dezvoltării bibliotecii de gestionare a memoriei jemalloc, al cărei repository a fost transferat în modul de arhivare în iunie anul trecut. Biblioteca jemalloc oferă o implementare alternativă a funcțiilor malloc, optimizată pentru a reduce fragmentarea și pentru a funcționa pe sisteme multiprocesor.

Se observă că compania Meta a realizat avantajele utilizării jemalloc în infrastructura sa și a decis să relueze lucrările la codul acestei biblioteci pentru a reduce costurile de întreținere, modernizarea bazei de cod, eliminarea datoriei tehnice și adaptarea alocatorului pentru noi tipuri de sarcini și echipamente actuale. Dezvoltarea va continua sub forma unui proiect open-source, dezvoltat împreună cu comunitatea și care salută implicarea participanților externi.

Biblioteca jemalloc a fost dezvoltată de Jason Evans în 2005 pentru FreeBSD 7.0, după care a fost portată în NetBSD și integrată în Firefox. În 2009, autorul jemalloc s-a alăturat companiei Facebook, unde această bibliotecă a fost utilizată în proiecte interne. În 2017, Jason a părăsit Facebook, continuându-se dezvoltarea de către echipa rămasă. După redenumirea în Meta, prioritățile companiei s-au schimbat, dezvoltarea bibliotecii s-a oprit, concentrarea s-a axat doar pe nevoile interne, iar baza de cod publică a degradat în timp. Menținerea bibliotecii publice necesita o refactorizare semnificativă, dar Jason nu era dispus să își piardă timpul cu acest lucru și, prin urmare, cu 10 luni în urmă, a trecut repository-ul în modul de arhivare.

Printre planurile pe care compania Facebook le-a stabilit pentru a le implementa după revigorarea proiectului se numără:

  • Reducerea datoriilor tehnice acumulate, realizarea refactorizării și curățării bazei de cod, îmbunătățirea bibliotecii pentru a menține eficiența, fiabilitatea și ușurința utilizării.
  • Continuarea dezvoltării alocatorului HPA (Huge-Page Allocator) pentru optimizarea consumului de resurse CPU prin utilizarea mai eficientă a paginilor mari de memorie (transparent hugepage).
  • Modificări pentru creșterea eficienței gestionării memoriei, legate de îmbunătățirea ambalării structurilor, a caching-ului și a curățării blocurilor de memorie eliberate.
  • Adăugarea de optimizări pentru arhitectura AArch64 (ARM64).

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster