Ny metod för minneshantering frÄn Facebook

En av medlemmarna i utvecklarteamet för det sociala nĂ€tverket Facebook, Roman Gushchin, föreslog i utvecklarnas nyhetsbrev en uppsĂ€ttning patchar för Linux-kĂ€rnan, inriktade pĂ„ att förbĂ€ttra minneshanteringen genom implementering av en ny minneskontroller — slab (slab memory controller).

Slab-fördelning –– Ă€r en minneshanteringsmekanism avsedd för effektivare minnesfördelning och för att eliminera betydande fragmentering. Grunden för denna algoritm Ă€r bevarandet av allokerat minne som innehĂ„ller ett objekt av viss typ, och att Ă„teranvĂ€nda detta minne vid nĂ€sta allokering för ett objekt av samma typ. Denna metod introducerades först i SunOS av Jeff Bonwick och anvĂ€nds nu brett i kĂ€rnor av mĂ„nga Unix-operativsystem, inklusive FreeBSD och Linux.

I grunden för den nya kontrolleraren ligger flyttning av slab-redovisningen frÄn sidanivÄ i minnet till nivÄer av kÀrnobjekt, vilket möjliggör gemensam anvÀndning av en slab-sida i olika cgroup, istÀllet för att allokera en separat cache för varje cgroup.

Resultaten av tester visar att den föreslagna minneshanteringsmetoden kan öka effektiviteten i slab-anvÀndningen med upp till 45%, och ocksÄ minska det totala minnesförbrukningen av operativsystemets kÀrna. Tack vare minskningen av antalet allokerade slab-sidor minskar Àven den allmÀnna minnesfragmenteringen, vilket inte kan annat Àn pÄverka systemets prestanda.

Den nya kontrolleraren har redan testats i flera mĂ„nader pĂ„ Facebooks arbetsservrar, och sĂ„ hĂ€r lĂ„ngt kan detta test kallas framgĂ„ngsrikt: utan förluster i prestanda och med ett ökande antal fel har en tydlig minskning av minnesanvĂ€ndningen observerats — pĂ„ vissa servrar upp till 1 GB. Detta tal Ă€r ganska subjektivt, eftersom tidigare genomförda tester visade nĂ„got lĂ€gre resultat:

  • 650-700 MB pĂ„ webbgrĂ€nssnittet
  • 750-800 MB pĂ„ servern med databascache
  • 700 MB pĂ„ DNS-servern

>>> Författarens profil pÄ GitHub


>>> Resultaten frÄn tidigare tester

KĂ€lla: linux.org.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster