CCoW: optimització de la còpia sobre escriptura tenint en compte la localitat espacial de les càrregues de treball, part 3

Apr 02, 2024

3. Disseny CCoW

En aquesta secció, primer presentem la nostra motivació per millorar la còpia sobre escriptura i expliquem el concepte bàsic de la còpia sobre escriptura basada en la cobertura (CCoW). A continuació, expliquem la manera com CCoW captura la localitat en diferents escenaris i l'optimització per capturar la localitat amb una sobrecàrrega baixa.

La memòria és la capacitat de les persones per adquirir, emmagatzemar i recuperar informació. Els records de la gent també diferiran en diferents escenaris. En aquest article, explorarem la relació entre la memòria en diferents escenaris.

El primer és l'escenari d'aprenentatge. L'aprenentatge és un mitjà important perquè els humans adquireixin coneixements i habilitats. En el procés d'aprenentatge, la memòria juga un paper fonamental. Si teniu una memòria forta, podeu dominar els nous coneixements més ràpidament i retenir els coneixements apresos més fàcilment. Per tant, en els escenaris d'aprenentatge, hem de mantenir el nostre pensament clar i centrat, per millorar millor la memòria.

El segon és el panorama turístic. Viatjar ens permet viure diferents cultures i entorns, enriquint molt els nostres horitzons. Durant el viatge, podem adquirir un ric coneixement cultural recordant ubicacions geogràfiques, persones, costums i altra informació. Per tant, en l'escena del viatge, hem d'observar-lo amb atenció i experimentar-lo activament, per millorar millor la nostra memòria.

Un cop més, és un escenari de treball. A la feina, hem de manejar una gran quantitat d'informació, com ara dades, contactes, tasques, plans, etc. Si la nostra memòria no és prou forta, afectarà l'eficiència i els èxits del nostre treball. Per tant, en els escenaris de treball, hem de fer una bona feina d'enregistrament i organització i intentar reduir el marge de "connexió d'informació" tant com sigui possible. D'aquesta manera, podem millorar millor la nostra memòria.

Finalment, hi ha escenes de vida. Els humans necessitem recordar moltes coses diàries, com ara adreces, números de telèfon, tasques del dia, etc. Si la nostra memòria no és prou bona, sorgiran molts problemes a la vida. Per tant, en les escenes de la vida, hem d'exercitar la nostra capacitat de memòria. Podem millorar la nostra memòria construint el pensament associatiu i repetint en silenci.

En resum, la memòria en diferents escenaris està estretament relacionada. Podem millorar la nostra memòria i aconseguir un millor rendiment en diversos escenaris mitjançant la pràctica i la concentració deliberades. Perseguim una vida i una carrera millors amb una actitud optimista. Es pot veure que hem de millorar la memòria, i Cistanche deserticola pot millorar significativament la memòria, perquè Cistanche deserticola també pot regular l'equilibri dels neurotransmissors, com l'augment dels nivells d'acetilcolina i factors de creixement. Aquestes substàncies són molt importants per a la memòria i l'aprenentatge. A més, Cistanche deserticola també pot millorar el flux sanguini i promoure el lliurament d'oxigen, cosa que pot garantir que el cervell rebi suficients nutrients i energia, millorant així la vitalitat i la resistència del cervell.

improve working memory

Feu clic a Coneix suplements per millorar la memòria

3.1. Motivació

Com s'ha comentat anteriorment, el mecanisme de còpia sobre escriptura té un paper clau en la implementació de funcions de memòria virtual als sistemes operatius moderns. Tanmateix, els seus avantatges en termes d'espai han anat disminuint en entorns informàtics moderns i càrregues de treball intensives en escriptura, que són habituals als centres de dades [21,22].

Les tecnologies de memòria emergents com la memòria d'emmagatzematge (SCM) i la memòria persistent permeten augmentar la densitat de dades per als mòduls de memòria alhora que redueixen el cost per unitat de dades.

Avui en dia, construir un node amb una gran quantitat de memòria a l'escala de terabytes s'ha tornat més barat que mai. A més, els proveïdors de serveis al núvol han informat que els nodes dels centres de dades pateixen una utilització baixa de la memòria, deixant el 40-50% de la memòria sense utilitzar [23-26]. En aquesta situació, es fa factible canviar l'espai de memòria pel rendiment en sistemes crítics de rendiment [27]. Els avantatges en termes de rendiment també han anat disminuint.

El benefici de rendiment de la còpia sobre escriptura es pot caracteritzar per la freqüència i el rendiment de la gestió d'errors de pàgina. Durant la generació d'un procés fill, el permís d'escriptura a totes les pàgines es va eliminar. Des de la perspectiva de la correcció, això és inevitable; tanmateix, condueix a errors de pàgina freqüents després de la bifurcació, en el servei de cada sol·licitud d'escriptura. Aquesta tempesta d'errors de pàgina d'escriptura no només passa als processos fills, sinó també al procés pare.

Per empitjorar-ho, el temps de gestió d'errors de pàgina no ha millorat recentment, però tendeix a allargar-se per motius de seguretat. En el passat, tot l'espai d'adreces del nucli estava assignat de manera persistent a una part de l'espai d'adreces del procés de l'usuari.

Tanmateix, aquest disseny d'espai d'adreces permet que els processos d'usuaris maliciosos llegiu indirectament les dades crítiques a l'espai d'adreces del nucli aprofitant l'execució especulativa dels processadors [28,29].

Per mitigar aquesta vulnerabilitat de seguretat crítica, els sistemes operatius moderns utilitzen l'aïllament de la taula de pàgines del nucli (KPTI). En general, només una part limitada de l'espai d'adreces del nucli s'assigna a l'espai d'adreces del procés, i la resta de l'espai d'adreces del nucli s'assigna i no s'assigna dinàmicament durant la interrupció i la gestió de la trucada del sistema. Això ha d'anar acompanyat d'un rentat de TLB, que pot degradar significativament el rendiment del sistema.

En aquest treball, pretenem reduir la sobrecàrrega de còpia sobre escriptura aprofitant la localitat espacial de les referències de memòria. Actualment, la còpia en escriptura té lloc per pàgina, i cada vegada que es produeix un error de pàgina, el sistema operatiu s'hi hauria d'implicar. La nostra idea clau és reduir la freqüència d'implicació del sistema operatiu aprofitant la localitat espacial dels accessos a la memòria. Si s'accedeix a una pàgina per escriure, també és probable que s'accedeixi a les pàgines properes per escriure en breu.

Així, si realitzem la còpia sobre escriptura no només per a la pàgina defectuosa sinó també per a pàgines properes juntes (és a dir, precopiar pàgines properes), podem amortitzar la sobrecàrrega de la còpia sobre escriptura durant la gestió d'errors de la pàgina. Tanmateix, hem d'anar amb compte de no copiar sempre a cegues totes les pàgines properes.

Si les pàgines copiades s'escriuen més tard, les despeses generals ocasionades per a la còpia prèvia es retornen. Tanmateix, si les pàgines copiades no s'escriuen després, la còpia prèvia només comporta una sobrecàrrega addicional en termes de temps i espai.

ways to improve your memory

Per tant, és crucial identificar les pàgines de destinació adequades per copiar. S'han emprat enfocaments similars per minimitzar la sobrecàrrega de gestió d'errors de pàgina. Linux utilitza l'anomenada funció d'"error al voltant". Mentre gestiona un error de pàgina, Linux inicia el maneig d'errors de pàgina per a les pàgines que es troben al voltant de la pàgina defectuosa [2]. Aquesta característica, però, només s'aplica als errors de la pàgina de lectura de les regions de memòria amb còpia de seguretat de fitxers.

Atès que la idea proposada se centra a escriure errors de pàgina per a pàgines anònimes, podem argumentar que el nostre enfocament és diferent de la funció d'error. S'han proposat molts dissenys d'última generació [12–17] per optimitzar l'ús de pàgines enormes al sistema operatiu.

Aquests sistemes, en comú, presenten un esquema per identificar les millors pàgines candidates per convertir-se en pàgines grans i promocionar-les de manera eficient (és a dir, convertir pàgines base en una pàgina enorme) o baixar de (és a dir, convertir una pàgina enorme en pàgines base) pàgines enormes.

Tanmateix, independentment dels esquemes proposats, la còpia sobre escriptura només es realitza a la granularitat de la pàgina base, després de dividir la pàgina enorme en pàgines base si cal. Per tant, les seves característiques de rendiment de còpia en escriptura són les mateixes que el sistema Linux predeterminat amb el mecanisme de pàgina enorme transparent (THP). En canvi, el nostre esquema proposat és únic perquè realitza una còpia sobre escriptura amb una granularitat diferent segons el grau de localitat en els accessos de memòria.

3.2. Identificació de la localitat espacial

Per dur a terme l'esquema proposat, hauríem de considerar dues qüestions difícils. En primer lloc, s'han d'identificar les pàgines de destinació de manera precisa i oportuna, de manera que es maximitzi el benefici de la precòpia mentre es minimitzi la sobrecàrrega de la precòpia.

Una vegada que un escriptor ha copiat una pàgina, la pàgina no activarà més errors de pàgina. Això significa efectivament que el sistema va perdre l'oportunitat d'optimitzar l'accés d'escriptura. Per tant, el sistema hauria de ser capaç de preveure l'ús futur de les pàgines per determinar quines pàgines s'han de copiar i quines no. En segon lloc, la identificació de les pàgines de destinació hauria de tenir una sobrecàrrega baixa, ja que el sistema operatiu no es pot permetre un processament que consumeix molt de temps al subsistema de gestió de memòria crítica per al rendiment.

Com s'ha comentat a la secció 2, moltes característiques de memòria virtual dels sistemes operatius moderns es basen en el mecanisme de còpia sobre escriptura. Així, la sobrecàrrega pot superar fàcilment els beneficis de la còpia sobre escriptura optimitzada si la implementació global no és prou eficient.

Per predir el futur d'una pàgina, primer recollim l'historial de bifurcacions per als processos dels usuaris. Concretament, el sistema operatiu supervisa el nombre de bifurcacions que invoca cada procés. Un recompte baix d'un procés implica que hi ha poques oportunitats d'explotar el procés i que el sistema operatiu no necessita fer un seguiment complet dels errors de la pàgina d'escriptura d'aquest procés.

En canvi, quan un procés invoca la trucada del sistema de bifurcació més d'un llindar, el sistema pot esperar l'oportunitat d'optimització. Això passa amb Redis, que invoca periòdicament bifurcacions per prendre instantànies a la memòria, o amb l'script d'intèrpret d'ordres que bifurca múltiples ordres de línia d'ordres. En resposta, el sistema comença a fer un seguiment dels errors de pàgina del procés.

improve brain

A continuació, proposem un mètode per predir l'oportunitat d'optimització a partir de l'historial, assumint que el comportament general de les aplicacions no canvia significativament. Per a això, dividim l'espai d'adreces del procés en regions de mida fixa. Cada regió manté un mapa de bits, on cada bit correspon a una pàgina de la regió. Es genera un procés amb tots els mapes de bits esborrats, com per a les àrees de memòria virtual (VMA) recentment poblades. Quan un VMA complet d'un partor no es mapeja, també s'alliberen els mapes de bits de l'interval d'adreces corresponent.

El mapa de bits només s'assigna per a les parts de VMA que s'omplen i la informació de la pàgina d'un 4 KB es resumeix en un bit. Per tant, la sobrecàrrega d'espai per al mapa de bits aproximadament 0,003% de l'espai d'adreces ocupat. Inicialment, les escriptures es processen mitjançant la còpia sobre escriptura tal qual.

Un accés d'escriptura està atrapat al controlador d'errors de pàgina, mitjançant el qual s'estableix l'entrada de mapa de bits corresponent. Amb el temps, el mapa de bits captura eficaçment els accessos a la regió i podem quantificar el grau de cobertura. La cobertura d'una regió es calcula com el percentatge de còpies sobre pàgines escrites de totes les pàgines de la regió, de la manera següent:

improve cognitive function

Suposem que un sistema utilitza pàgines de 4 KB i l'espai d'adreces es divideix en regions de 2 MB.

Aleshores, cada regió té 512 4 pàgines KB. Si es copien 300 pàgines en escriptures, la cobertura de la regió és de 300/512 × 100=58,6%. Com més gran sigui la cobertura d'una regió, més es pot beneficiar la regió de l'oportunitat d'optimització de la precòpia. Aquesta informació de cobertura es trasllada a la bifurcació i s'utilitza com a mètrica per determinar el benefici de copiar pàgines properes.

Concretament, si una regió de memòria té una gran cobertura, és probable que les pàgines de la regió es puguin copiar per escrit. Per tant, seria beneficiós precopiar altres pàgines de la regió mentre es processa un error de pàgina d'escriptura d'una pàgina. Mentre que, l'oportunitat d'optimització en la precopiar pàgines és poca si la cobertura és baixa. Per tant, el controlador d'errors de pàgina només copia la pàgina defectuosa.

D'ara endavant, ens referirem a aquest esquema com a còpia sobre escriptura basada en la cobertura o CCoW per a la resta del treball. La figura 1 il·lustra el concepte de CCoW. Hi ha dues regions, regions 0 i 1, cadascuna de sis pàgines. 

Les pàgines amb ombra verda s'omplen amb còpia en escriptura. Quan el procés invoqui la trucada del sistema de bifurcació, el permís d'escriptura per a totes les pàgines, incloses les verdes, s'han de deixar caure durant la bifurcació. Suposem que el llindar per determinar la regió de localitat alta és del 60%. A la regió 0, s'havien copiat quatre pàgines (pàgines 1, 2, 3 i 4) per escriure abans de la bifurcació, proporcionant una cobertura del 4/6=66%.

Per tant, es considera que aquesta regió té una localitat espacial alta, i totes les pàgines es copien per gestionar l'error de pàgina de la pàgina 3, ombrejada en vermell. Mentre que, la regió inferior ofereix una cobertura del 33%, ja que dues de les sis pàgines s'havien escrit abans de la bifurcació.

Per tant, aquesta regió té una cobertura inferior al llindar, la qual cosa implica la baixa localitat espacial de la regió. Així, quan s'accedeix a la pàgina 9 per escriure, només la pàgina defectuosa es copia en escriptura al controlador d'errors de pàgina, igual que el procediment normal de còpia sobre escriptura.

improve memory


For more information:1950477648nn@gmail.com

Potser també t'agrada