TMO, en Facebook-mekanism som sparar RAM på servrar

Facebooks ingenjörer avslöjade, genom en rapport, införandet av teknik TMO (Transparent Memory Offloading) förra året, vilket gör det möjligt att avsevärt spara RAM på servrar genom att flytta sekundär data som inte krävs för att fungera på billigare enheter som NVMe SSD.

Facebook uppskattar att TMO sparar mellan 20 % och 32 % av RAM-minnet på varje server. Lösningen är designad för användning i infrastrukturer där applikationer körs i isolerade behållare. Komponenterna på kärnan i TMO de är redan inkluderade i Linux-kärnan.

På Linux-kärnan, operationen teknik tillhandahålls av PSI-delsystemet (Information om tryckstopp), tillhandahålls från och med version 4.20.

PSI som redan används i olika drivrutiner som är slut på minnet och gör det möjligt att analysera information om väntetid för olika resurser (CPU, minne, I/O). Med PSI kan användarutrymmesprocessorer mer exakt bedöma systembelastning och avmattningsmönster, vilket gör att avvikelser kan upptäckas innan de har en märkbar inverkan på prestanda.

I användarutrymmet kör Senpai-komponenten TMO, som dynamiskt justerar minnesgränsen för applikationsbehållare via cgroup2 baserat på data som tas emot från PSI.

Senpai analyserar tecknen på början på en brist på resurser via PSI, utvärderar applikationernas känslighet för långsam minnesåtkomst och försöker fastställa den minsta minnesstorleken som krävs för en behållare, där den data som krävs för jobbet finns kvar i RAM, och relaterad data som har legat i filcachen eller för närvarande inte används direkt, tvingas ut till swap-partitionen.

Transparent Memory Offload (TMO) är Metas lösning för heterogena datacentermiljöer. Den introducerar en ny Linux-kärnmekanism som mäter förlorat arbete på grund av resursbrist i CPU, minne och I/O i realtid. Med hjälp av denna information och utan förkunskaper om applikationen justerar TMO automatiskt mängden minne som ska laddas av till en heterogen enhet, såsom ett komprimerat minne eller SSD. Den gör detta baserat på enhetens prestandaegenskaper och applikationens känslighet för långsammare minnesåtkomster.

Därför, kärnan i TMO är att hålla processer på en "strikt diet" när det gäller minneskonsumtion, vilket tvingar oanvända minnessidor att flyttas till växlingspartitionen, vars borttagning inte påverkar prestandan märkbart (till exempel sidor med kod som endast används under initiering och engångsdata cachad på disken) . Till skillnad från att spola information till swap-partitionen som svar på lågt minne, rensar TMO data baserat på prediktiv förutsägelse.

Frånvaron av tillgång till en minnessida inom 5 minuter används som ett av kriterierna för preferens. Dessa sidor kallas kalla sidor och i genomsnitt utgör de cirka 35 % av applikationens minne (beroende på typ av applikation är det en variation från 19 % till 65 %).

Inställningen tar hänsyn till aktivitet associerad med anonyma minnessidor (minne tilldelat av applikationen) och minne som används för filcache (tilldelat av kärnan). I vissa applikationer är det anonyma minnet huvudkonsumtionen, men i andra är filcachen också mycket viktig.

För att undvika obalans när minnet spolas till cachen använder TMO en ny personsökningsalgoritm som rensar bort anonyma sidor och sidor som är associerade med filcachen proportionellt.

Att skjuta sällan använda sidor till långsammare minne har ingen stor inverkan på prestanda, men det kan avsevärt minska hårdvarukostnaderna. Data skickas till SSD-enheter eller komprimerat swap-utrymme i RAM. Till priset av att lagra en byte med data är det upp till 10 gånger billigare att använda NVMe SSD:er än att använda komprimering på RAM.

Slutligen, om du är intresserad av att veta mer om det kan du läsa detaljerna I följande länk.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   Elian sade

    kan detta användas i vanliga datorer med vanliga appar?