Stora sidor har länge använts för att minska adress översättning overheads på stora minnessystem, särskilt i virtualiserade miljöer där TLB missar overheads är allvarliga. Vi visar dock att stora sidor, långt ifrån att vara ett universalmedel, används sparsamt av moderna virtualiseringsprogram. Detta beror på att stora sidor ofta utesluter lätt minneshantering, vilket kan uppväga deras översättning Lookape Buffer (TLB) fördelar. Till exempel, de minskar möjligheterna att deduplicera minnet bland virtuella maskiner i överkomponerade system, störa lättviktsminne övervakning, och hindra smidigheten av virtuella maskiner (VM) migreringar. Även om många av dessa problem är särskilt allvarliga i överåtagandena system med knappa minnesresurser, kan de (och ofta gör) finnas i allmänhet i molnutplaceringar. Som svar, virtualisering programvara ofta (även om det inte behöver) splinters gäst operativsystem (OS) stora sidor till små system fysiska sidor, offrar adressöversättning prestanda för övergripande system-nivå fördelar. Vi introducerar enkel hårdvara som överbryggar denna grundläggande konflikt, med hjälp av spekulativa tekniker för att gruppera sammanhängande, anpassade små sidöversättningar så att de närmar sig adress översättning prestanda stora sidor. Våra Generalized Large-page Utilization förbättringar (GLUE) tillåter systemhypervisors att splittra stora sidor för smidig minneshantering, samtidigt som du behåller nästan alla TLB prestanda av osplintered stora sidor.
GLUE REF-grupper sammanhängande, anpassade små sidöversättningar under en enda spekulativ enorm sida översättning i TLB.
Large pages and lightweight memory management in virtualized environments: can you have it both ways?
{'venue': 'MICRO-48', 'journal': None, 'mag_field_of_study': ['Computer Science']}