Facebook har presenterat mekanismen TMO, som gör det möjligt att spara 20-32 % av minnet pÄ servrar.

Ingenjörer frÄn Facebook (förbjudet i Ryssland) har publicerat en rapport om införandet av teknologin TMO (Transparent Memory Offloading) förra Äret, vilket möjliggör betydande minnesbesparingar pÄ servrar genom att flytta sekundÀra data som inte krÀvs för uppgiften till billigare lagringsenheter, sÄsom NVMe SSD-enheter. Enligt Facebook gör anvÀndningen av TMO det möjligt att spara mellan 20 och 32 % RAM-minne pÄ varje server. Lösningen Àr avsedd för infrastrukturer dÀr applikationer körs i isolerade containrar. KÀrnkomponenterna för TMO Àr redan inkluderade i Linux-kÀrnan.

PÄ kÀrnans sida sÀkerstÀlls funktionen av PSI (Pressure Stall Information), som levereras frÄn version 4.20. PSI anvÀnds redan i olika hanterare av minnesbrist och möjliggör analys av information om vÀntetid för att fÄ olika resurser (CPU, minne, in-/utmatning). Genom PSI kan hanterare i anvÀndarrummet mer noggrant bedöma systemets belastningsnivÄ och karaktÀren av nedbromsning, vilket gör det möjligt att identifiera avvikelser i ett tidigt skede nÀr de fortfarande inte pÄtagligt pÄverkar prestandan.

I anvÀndarrummet stöds TMO av komponenten Senpai, som genom cgroup2 dynamiskt justerar minnesbegrÀnsningen för applikationscontainrar baserat pÄ data som erhÄllits frÄn PSI. Senpai analyserar tecken pÄ att resurser börjar bli otillrÀckliga genom PSI, bedömer applikationernas kÀnslighet för fördröjning i minnesÄtkomst och försöker bestÀmma den minimala nödvÀndiga minnesstorleken för containern, dÀr de data som krÀvs för arbetet förblir i RAM-minnet, medan tillhörande data som sparats i filcachen eller för nÀrvarande inte anvÀnds, flyttas till vÀxlingsutrymmet.

Facebook har presenterat mekanismen TMO, som gör det möjligt att spara 20-32 % av minnet pÄ servrar.

SÄledes handlar TMO om att hÄlla processer pÄ en strikt diett nÀr det kommer till minnesanvÀndning, genom att tvinga fram flyttning av outnyttjade minnessidor till vÀxlingsutrymmet, dÀr utbytet inte mÀrkbart pÄverkar prestandan (till exempel sidor med kod som endast anvÀnds vid initiering samt data som anvÀnds enskilt i diskens cache). Till skillnad frÄn utbyte av information till vÀxlingsutrymmet som svar pÄ minnesbrist, sker datautbyte i TMO baserat pÄ proaktiv prognostisering.

Som ett av kriterierna för utbyte anvÀnds avsaknad av Ätkomst till en minnessida under 5 minuter. SÄdana sidor kallas kalla (cold memory page) och utgör i genomsnitt cirka 35% av applikationernas minne (beroende pÄ typen av applikationer kan spridningen variera mellan 19% och 65%). Vid utbytet beaktas aktiviteten relaterad till anonyma minnessidor (minne som tilldelas av applikationen) samt minne som anvÀnds vid filcache (som tilldelas av kÀrnan). I vissa applikationer Àr den huvudsakliga förbrukningen kopplad till anonymt minne, medan filcache kan ha stor betydelse i andra. För att undvika obalans vid utbyte av minne till cache anvÀnder TMO en ny vÀxlingsalgoritm som proportionellt byter ut anonyma sidor och sidor relaterade till filcache.

Utbyte av sÀllan anvÀnda sidor till lÄngsammare minne pÄverkar inte prestandan nÀmnvÀrt, men gör det möjligt att avsevÀrt minska kostnaderna för hÄrdvara. Data flyttas till SSD-enheter eller till ett kompakt vÀxlingsomrÄde i RAM-minnet. NÀr det gÀller kostnaden för att lagra en byte data Àr anvÀndningen av NVMe SSD upp till 10 gÄnger billigare Àn anvÀndningen av komprimering i RAM-minnet.

Facebook har presenterat mekanismen TMO, som gör det möjligt att spara 20-32 % av minnet pÄ servrar.


KĂ€lla: opennet.ru
Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster