Një nga anëtarët e ekipit të zhvillimit të rrjeteve sociale Facebook, Roman Gushchin, propozoi në listën e postimeve të zhvilluesit një grup të Arna të kernelit Linuxqë synon përmirësimin e menaxhimit të kujtesës përmes zbatimit të një kontrolluesi të ri të menaxhimit të kujtesës - pllakë (kontrollues i memories së pllakës).
shpërndarja e pllakave është një mekanizëm i menaxhimit të kujtesës i krijuar për të shpërndarë kujtesën në mënyrë më efikase dhe për të eliminuar fragmentimin e konsiderueshëm. Baza e këtij algoritmi është ruajtja e memories së alokuar që përmban një objekt të një lloji të caktuar dhe ripërdorimi i asaj memorie herën tjetër që ndahet për një objekt të të njëjtit lloj. Kjo teknikë u prezantua për herë të parë në SunOS nga Jeff Bonwick dhe tani përdoret gjerësisht në bërthamat e shumë sistemeve operative Unix, duke përfshirë FreeBSD dhe Linux.
Kontrolluesi i ri bazohet në lëvizjen e kontabilitetit të pllakës nga niveli i faqes së kujtesës në nivelin e objektit të kernelit, gjë që bën të mundur ndarjen e një faqeje pllake në cgrupe të ndryshme, në vend të ndarjes së një cache të veçantë për çdo cgroup.
Bazuar në rezultatet e testit, rezulton se metoda e propozuar e menaxhimit të kujtesës lejon rritjen efikasitet duke përdorur pllakë të 45%, dhe gjithashtu do të zvogëlojë konsumin e përgjithshëm të memories së kernelit OS. Gjithashtu, duke reduktuar numrin e faqeve të alokuara për pllakë, zvogëlohet fragmentimi i memories në tërësi, gjë që nuk mund të mos ndikojë në performancën e sistemit.
Kontrolluesi i ri është testuar në serverët e prodhimit të Facebook për disa muaj, dhe deri më tani ky testim mund të quhet i suksesshëm: pa humbje në performancë dhe pa rritje të numrit të gabimeve, është vërejtur një rënie e qartë e konsumit të memories - në disa serverë deri në 1 GB. Ky numër është mjaft subjektiv, për shembull, testet e mëparshme treguan rezultate pak më të ulëta:
- 650-700 MB në frontin e internetit
- 750-800 MB në një server me cache të bazës së të dhënave
- 700 MB në serverin DNS
>>> Rezultatet e hershme të testit
Burimi: linux.org.ru