CCoW: Optimera Copy-on-Write med tanke på den rumsliga lokaliteten i arbetsbelastningar del 6

Apr 03, 2024

Den bästa regionstorleken och tröskeln varierar beroende på arbetsbelastningens egenskaper. För att utvärdera påverkan av arbetsbelastning mäter vi CCoW:s prestanda på arbetsbelastningen på olika platser. Specifikt ändrade vi parametern för Zipfdistribution, som bestämmer graden av lokalitet.

Det finns ett nära samband mellan mänskligt minne och arbetsbelastning. När vi behöver bearbeta stora mängder information eller utföra komplexa uppgifter måste våra hjärnor vara mycket vaksamma för att säkerställa att all nödvändig information bearbetas och lagras korrekt. Neuroner i hjärnan ansluter ständigt och kommunicerar, vilket i hög grad påverkar hur vi tänker och minns.

Samtidigt som att bearbeta stora mängder information och slutföra komplexa uppgifter kan utmana vårt minne och kognitiva förmågor, visar forskning att med rätt träning och övning kan vi förbättra vårt minne och vår produktivitet avsevärt. Till exempel, genom experiment, har forskare upptäckt att genom omfattande minnesträning och träning kan människor avsevärt förbättra sitt minne och sin arbetseffektivitet.

Ur detta perspektiv kan vi dra slutsatsen att kontinuerlig träning och träning är mycket viktig för dem som vill förbättra sitt minne och arbetseffektivitet. Håll också en positiv attityd, eftersom stress kan hämma ens minne och produktivitet.

Sammanfattningsvis finns det ett starkt samband mellan arbetsbelastning och minne. Så länge vi håller oss fokuserade, tränar och övar regelbundet och bibehåller en positiv attityd, kan vi förbättra vårt minne och vår arbetseffektivitet avsevärt. Cistanche deserticola kan också reglera balansen mellan signalsubstanser, såsom ökande nivåer av acetylkolin och tillväxtfaktorer, som är viktiga för minne och inlärning. Dessutom kan Cistanche deserticola också förbättra blodflödet och främja syretillförseln, vilket kan säkerställa att hjärnan får tillräckligt med näringsämnen och energi, och därigenom förbättra hjärnans vitalitet och uthållighet.

supplements to improve memory

Klicka på vet sätt att förbättra ditt minne

Åtkomsterna fördelas enhetligt när är {{0}}, och ju högre värdet på , desto högre lokalitetsnivå uppvisar arbetsbelastningen. När är 1,0 involverar cirka 80 % av operationerna 20 % av datan.

Denna grad av lokalitet finns vanligtvis i flera verkliga arbetsbelastningar, som Pareto-principen säger. Vi mäter med tre olika värden, 1.0, 0.9 och 1.1, där 1.0 är baslinjen och 0.9 och 1.1 representerar låg respektive hög lokal arbetsbelastning.

Den ursprungliga CoW-prestandan varierar beroende på arbetsbelastningen, så gaffelperioden för en arbetsbelastning ställdes in enligt den tid som mättes med den ursprungliga CoW-inställningen. Till exempel, om den ursprungliga CoW-konfigurationen kräver 10 sekunder för att återställa den normala prestandan efter afork, delar de andra CCoW-konfigurationerna också underordnade processer var 10:e s.

Figur 5 sammanfattar den genomsnittliga genomströmningen och minnesanvändningen för CCoW med olika lokala arbetsbelastningar. För den låga arbetsbelastningen uppvisar konfigurationerna med smallCCoW-tröskelvärden bättre prestanda än de med höga trösklar. 'CCoW-all' överträffar till och med den ursprungliga CoW med 15 % i den låga arbetsbelastningen. Detta beror på effektiviteten av förkopian. I den låga arbetsbelastningen bör en stor del av minnet replikeras eftersom åtkomster sprids över hela processadressutrymmet. I själva verket resulterar kopiering av hela regioner i kopiering av det nödvändiga minnet i förväg med låg overhead.

improve brain

Således, ju mindre tröskeln är, desto högre prestanda för programmet med den låga arbetsbelastningen. Denna trend har dock motsatt effekt med hög lokal arbetsbelastning. Med hög lokal arbetsbelastning är många åtkomster fokuserade på ett fåtal sidor.

Detta innebär att endast en liten del av minnet behöver replikeras under hela copyon-write. Att kopiera hela regionen på ett sidfel tenderar att kopiera de sidor som inte nås alls.

Detta medför bara en tidsmässig omkostnad, vilket försämrar prestandan med arbetsbelastningar på högre ort. Som ett resultat uppvisar CCoW-all den sämsta prestandan med den höga arbetsbelastningen. Andra konfigurationer visar liknande mönster av baslinjearbetsbelastningar; prestanda toppar vid tröskelvärdet på 80 % och sjunker med mindre tröskelvärden.

improving brain function

Minnesanvändningen av riktmärket visar en konsekvent trend oavsett graden av lokalisering av arbetsbelastningarna. 'CCoW-all' representerar alltid den högsta minnesanvändningen eftersom den alltid kopierar alla sidor i minnet efter en gaffel. Dessutom är minnesfootprints omvänt proportionella mot tröskelvärdet; ju mindre tröskelvärdet är, desto mer minne använder riktmärket.

Minnesförstärkningen ökas endast med upp till 10 % jämfört med den ursprungliga CoW-konfigurationen, som anses vara inom ett rimligt intervall. Förutom att analysera prestandan för CCoW, jämför vi prestandan för CCoW med den för den genomskinliga enorma sidan (THP) system för Linux.

THP är något likt CCoW genom att det syftar till att mildra de overhead som härrör från små sidor. 'CoW-THP' i figur 5 representerar prestandan för den THP-aktiverade konfigurationen. Observera att det THP-aktiverade systemet hanterar CoW genom att dela upp enorma sidor i bassidor innan den felaktiga sidan kopieras, och det gör även andra scheman som optimerar THP [12–15,17].

Vi kan observera att THP uppvisar bättre prestanda än standardkonfigurationen för 'CoW-only'. Vi tillskriver prestandavinsten den ökade effektiviteten i adressöversättning med enorma sidor.

Specifikt, enligt THP-schemat, kommer sannolikt den heta delen av processens adressutrymme att delas upp i bassidor, vilket ger samma prestanda som "CoW-only"-konfigurationen. Den kalla delen av processens adressutrymme är dock inte delad och underhålls med enorma sidor. Detta kan alltså öka applikationens prestanda i viss utsträckning.

THP ger dock inte lika mycket prestandaförbättring som CCoW gör. Figur 6 visar den kumulativa fördelningen av genomströmningen under utvärderingen. X-axeln representerar genomströmningen i operationer per sekund, och y-axeln representerar det kumulativa förhållandet mellan prestanda och genomströmningsvärdet. Förutom CCoW-all kan vi hitta tre ofta observerade genomströmningsintervall oavsett konfigurationer.

Den första gruppen i det kumulativa förhållandet {{0}} till 0.1 indikerar den period under vilken riktmärkets prestanda minskar direkt efter gaffeln. Sedan återhämtar prestationen övertid, som i den andra gruppen med ett kumulativt förhållande på 0,1 till 0,7.

De återstående kumulativa förhållandena i intervallet {{0}}.7 till 1.0 är från åtkomster som inte orsakar sidfel. Totalt sett tenderar CCoW-konfigurationer att ha mer allvarliga prestandasänkningar än den ursprungliga CoW. Närmare bestämt, med den höga arbetsbelastningen av det ursprungliga CoW-schemat, sjunker genomströmningen till cirka 1900 K operationer per sekund direkt efter gaffeln.

improve memory

Den rampar sedan långsamt upp till intervallet 2500 K operationer per sekund. Med CCoW sjönk prestandan mer, till intervallet 1700 K operationer per sekund. Men prestandan återhämtade sig snabbare och visade bättre prestanda än den ursprungliga CoW för det mesta (dvs mestadels på höger sida av den kumulativa grafen). Vi kan också observera en liknande trend från andra arbetsbelastningar, och CCoW-all-konfigurationen visar extremt beteende; direkt efter gaffeln sjunker prestandan avsevärt och förblir låg medan det mesta av adressutrymmet kopieras med spridningsåtkomster.

Efter den tidpunkten uppstår dock bara ett fåtal sidfel, så de flesta åtkomster bearbetas utan sidfel. Således har thethroughput en bimodal distribution i CCoW. Från denna utvärdering bekräftade vi att CCoW ger optimal prestanda genom att optimera det vanliga fallet.

Men prestandafallet bör åtgärdas för att få bättre prestandaegenskaper. För detta ändamål arbetar vi för närvarande med att strypa mängden kopierad data direkt efter gaffeln.

supplements to boost memory

4.2. CCoW-prestanda på realistisk arbetsbelastning

För att utvärdera den föreslagna CCoW på en realistisk arbetsbelastning använde vi Redis och YCSB. Redis är en databas med nyckelvärden i minnet som ofta används för att accelerera applikationer i internetskala.

Vi använde YCSB Benchmark för att fylla i nyckel-värdepar i en Redis-instans och för att utföra operationer på dem. Specifikt initieras Redis-instansen med 10 GB nyckel-värdepar med standard YCSB-konfiguration.

Alla nycklar och värden är 23 respektive 100 byte stora, och varje nyckel innehåller 10 värdefält. Efter att ha fyllt i Redis-instansen konfigurerade vi den för att göra ögonblicksbilder och matade sedan uppdateringsoperationer med YCSB.

För att införliva den tidsmässiga lokaliteten i nyckel-värde-åtkomsterna ställer vi in ​​YCSB-arbetsbelastningen för att välja målnycklar enligt Zip-fördelningen med hjälp av parametervärdet 1.0.

Medan vi gjorde 100 GB uppdateringar, samlade vi in ​​genomströmningen för varje sekund av YCSB benchmark-rapporten. Figur 7 sammanfattar den genomsnittliga genomströmningen och minnesanvändningen för Redis-instansen när systemet är konfigurerat att använda den ursprungliga CoW eller CCoW. Observera att vi använde 2 MB för regionstorleken, och alla resultatvärden normaliserades till CoW.

improve cognitive function

Sammantaget överträffade alla CCoW-konfigurationer den ursprungliga CoW, oavsett täckningströskeln. Likaså, som vi analyserade ovan, bestämdes prestandan av avvägningen mellan prestandavinsten från den minskade kopieringen på skrivning och omkostnaden för att kopiera ytterligare sidor. När tröskelvärdet är högt kopieras endast ett fåtal regioner, vilket gör både optimeringsmöjligheten och minnesoverheaden liten.

När tröskelvärdet sjunker under 85 % ökar minnesfotavtrycket och medför mer omkostnader. Som ett resultat varierar den genomsnittliga genomströmningen av CCoW beroende på täckningströskeln men visar upp till 5 % prestandaförbättring jämfört med den ursprungliga CoW.

Med Redis- och YCSB-arbetsbelastningen observerade vi endast en marginell prestandaförbättring med THP. Detta beror på att skrivåtkomsterna i arbetsbelastningen är utspridda över hela processadressutrymmet, och enorma sidor delas effektivt upp i bassidor medan CoW hanteras.

Eftersom Redis-processen bara kan ha några få enorma sidor, liknar dess prestanda den för baskonfigurationen. Detta resultat visar att det THP-baserade tillvägagångssättet är mindre effektivt i skrivintensiva arbetsbelastningar, och CCoW överträffar THP.

För att utvärdera mekanismens noggrannhet vid identifiering av regioner med hög lokalitet klassificerade vi orsaken till den kopieringsgenererande mekanismen för varje kopierad sida. Specifikt samlade vi in ​​förhållandet mellan kopierade sidor av alla kopierade sidor. När förkopieringsförhållandet är x %, vilket ökar det totala minnesfotavtrycket med y %, kan vi beräkna förhållandet för onödig förkopia genom att dividera y med x.

Till exempel, i CCoW-80-konfigurationen, kopieras 26,9 % av de kopierade sidorna, vilket ökar minnesfotavtrycket med 6,7 %. Detta innebär att 24,9 % av de förkopierade sidorna inte refereras. Tabell 1 sammanfattar beräkningen. Det onödiga förkopieringsförhållandet sträcker sig från 23,4 % till 35,6 %, och från utvärderingsresultatet kan man dra slutsatsen att det föreslagna schemat exakt fångar regioner med hög lokalitet.

improve working memory

5. Slutsatser

I denna studie föreslog vi CCoW, ett optimerat kopiera-på-skriv-schema för arbetsbelastningar med hög rumslig lokalitet. CCoW delar upp processadressutrymmet i regioner och uppskattar deras lokalitet med täckningen.

En skrivning till en region med hög lokalitet leder till att sidfelshanteraren förkopierar närliggande sidor. För att korrekt spåra täckningen efter förkopian använder CCoW den smutsiga biten i sidtabellen. Utvärdering med riktmärken bekräftade att det föreslagna systemet kan identifiera regioner med hög lokalitet med små omkostnader, vilket möjliggör prestandavinster från applikationer utan ändringar.

Som vi nämnde sjunker prestandan avsevärt direkt efter gaffeln på grund av den enorma mängden data som ska kopieras. Vi arbetar för närvarande med att hantera prestandaminskningen genom att strypa hastigheten för förkopiering och utföra förkopieringen asynkront. Vi planerar också att införliva en adaptiv mekanism som justerar konfigurationsparametrarna i enlighet med egenskaperna hos den aktuella arbetsbelastningen.

Författarbidrag: Conceptualization, MH och S.-HK; metodik, MH; mjukvara, MH;validering, MH och S.-HK; formell analys, MH och S.-HK; utredning, MH, och S.-HK;resurser, S.-HK; datakurering, MH; skriva-original utkast förberedelse, MH; skriva-recension och redigering, MH och S.-HK; visualisering, MH; tillsyn, S.-HK; projektadministration,S.-HK; finansieringsförvärv, S.-HK Alla författare har läst och samtyckt till den publicerade versionen av manuskriptet.

boost memory

Finansiering: Denna forskning stöddes av ett anslag för Electronics and Telecommunications Research Institute (ETRI) finansierat av den koreanska regeringen (20ZS1310) och BK21 FOUR-programmet från Koreas National Research Foundation finansierat av utbildningsministeriet (NRF5199991014091).

Utlåtande av institutionell granskningsnämnd: Ej tillämpligt.

Informerat samtycke: Ej tillämpligt.

Datatillgänglighet: Ej tillämpligt.

Intressekonflikter: Författarna förklarar ingen intressekonflikt.


Referenser
1. Gorman, M. Förstå Linux Virtual Memory Manager; Prentice Hall: Upper Saddle River, NJ, USA, 2007.

2. Bovet, DP; Cesati, M. Förstå Linuxkärnan; O'Reilly: Newton, MA, USA, 2001.

3. Love, R. Linux Kernel Development, 3:e upplagan; Addison Wesley: Boston, MA, USA, 2010.

4. Labs, R. Redis. Tillgänglig online: https://github.com/redis/redis (tillgänglig den 7 juni 2021).

5. Silberschatz, A.; Galvin, PB; Gagne, G. Operativsystemkoncept; Addison-Wesley Longman Publishing Co., Inc.: Boston, MA, USA, 2018.

6. Harris, SL; Harris, D. Digital design och datorarkitektur; Morgan Kaufmann: Burlington, MA, USA, 2022.

7. Abi-Chahla, F. Intel Core i7 (Nehalem): Arkitektur av AMD? Tillgänglig online: https://www.tomshardware.com/reviews/Intel-i7-nehalem-cpu,2041.html (tillgänglig den 18 oktober 2021).

8. Pham, B.; Bhattacharjee, A.; Eckert, Y.; Loh, GH Öka TLB-räckvidden genom att utnyttja klustring i sidöversättningar. I Proceedingsof 2014 IEEE 20th International Symposium on High-Performance Computer Architecture (HPCA'14), Orlando, FL, USA, 15–19 februari 2014; s. 558–567.


For more information:1950477648nn@gmail.com

Du kanske också gillar