CCoW: Optimizarea copierii pe scriere ținând cont de localitatea spațială în sarcinile de lucru Partea 5
Apr 03, 2024
4. Evaluare
Această secțiune raportează rezultatele evaluării schemei CCoW propuse. Am implementat CCoW în Linux Kernel v5.7.7 și a fost nevoie de aproximativ 400 de linii de cod. Evaluarea a fost efectuată pe un server cu un procesor Intel Xeon Gold 5215 și 128 GB de memorie.
Relația dintre rezultatele evaluării și memorie a atras întotdeauna multă atenție. Cercetările arată că rezultatele bune ale evaluării sunt strâns legate de o memorie excelentă.
Pe de o parte, rezultatele bune ale evaluării necesită învățarea și stăpânirea repetată a punctelor de cunoaștere și un grad ridicat de înțelegere și stăpânire aprofundată. Acestea necesită un suport bun de memorie. În special la examene, candidații trebuie să răspundă rapid și să răspundă corect și rapid la întrebări într-o perioadă scurtă, ceea ce necesită o memorie excelentă ca suport de bază. Numai cu o memorie excelentă poți să dai cel mai bine sub presiune.
Pe de altă parte, rezultatele bune de evaluare pot promova, de asemenea, îmbunătățirea memoriei. Când obținem rezultate excelente de evaluare, vom simți un sentiment de realizare și satisfacție. Aceste emoții pozitive au un impact pozitiv asupra memoriei și învățării noastre. O stare emoțională bună poate promova conexiunea și transmiterea de informații a celulelor nervoase din creier, îmbunătățind astfel memoria.
În concluzie, există o relație care se întărește reciproc între rezultatele evaluării și memorie. Pentru a obține rezultate mai bune de evaluare, trebuie să ne îmbunătățim continuu memoria, iar obținerea unor rezultate bune de evaluare ne poate îmbunătăți și mai mult memoria. Ar trebui să lăsăm deoparte emoțiile negative, să tratăm rezultatele evaluării și procesul de învățare cu o atitudine pozitivă, să muncim din greu cu insistență și să credem că vom reuși! Se poate observa că trebuie să îmbunătățim memoria, iar Cistanche deserticola poate îmbunătăți semnificativ memoria, deoarece Cistanche deserticola are efecte antioxidante, antiinflamatorii și anti-îmbătrânire, care pot ajuta la reducerea oxidarii și a reacțiilor inflamatorii din creier, protejând astfel sănătatea sistemului nervos. În plus, Cistanche deserticola poate promova și creșterea și repararea celulelor nervoase, sporind astfel conectivitatea și funcția rețelelor neuronale. Aceste efecte pot ajuta la îmbunătățirea memoriei, a învățării și a vitezei de gândire și pot preveni, de asemenea, dezvoltarea disfuncției cognitive și a bolilor neurodegenerative.

Faceți clic pe Cunoaștere pentru a îmbunătăți memoria pe termen scurt
Pentru a analiza diferite caracteristici de performanță, am folosit un microbenchmark intern. Pentru a evalua sarcinile de lucru realiste, am folosit Yahoo cloud servicebenchmark (YCSB) [30,31] pentru Redis [4]. Aceste programe sunt configurate cu parametrii impliciti, dacă nu se specifică altfel. Deoarece CCoW este implementat la nivel de kernel, nu a fost necesară nicio modificare pentru aplicațiile utilizator.
4.1. Caracterizarea performanței CCoW
Deoarece CCoW este controlat de doi parametri, și anume dimensiunea regiunii și pragul de acoperire, acești parametri determină performanța și comportamentul de execuție al CCoW.
În acest sens, în primul rând, am evaluat influența dimensiunii regiunii asupra performanței și a cheltuielilor generale ale CCoW. Am construit un program de microbenchmark pentru a evalua eficiența copyon-write. Programul este modelat după comportamentul de execuție al lui Redis. Mai întâi populează cei 16 GB de spațiu de memorie împărțit în blocuri de 1 KB, apoi, un bloc este selectat și actualizat în mod repetat cu datele predefinite.
Benchmark-ul repetă operațiunile până când scrie 160 GB de date sunt scrise. Blocurile țintă sunt selectate conform distribuției Zipfian cu parametrul=1.0 pentru a oferi o cantitate rezonabilă de localitate în accese.
Aceste operațiuni simulează operațiunile de actualizare ale Redis cu sarcini de lucru YCSB. Pentru a imita caracteristica instantanee a Redis, benchmark-ul periodic forkchild'shildprocess. După crearea procesului copil, performanța procesului de referință principal scade brusc din cauza supraîncărcării crescute de gestionare a erorilor de pagină.
Performanța este recuperată și stabilizată de-a lungul timpului, deoarece rămân mai puține pagini pentru măsura de copiere la scriere. Timpul de la scăderea performanței până la recuperare este de 99% din performanța normală utilizând configurația originală CoW și folosind acest timp ca interval pentru furci.
Procesul copil a fost menținut inactiv timp de două intervale de furcă înainte de a ieși. Măsurăm debitul mediu al benchmark-ului și amprenta de memorie a procesului, variind în același timp dimensiunea regiunii de la 32 KB la 2 MB. Debitul indică câștigul de performanță cu CCoW, deci cu cât este mai mare, cu atât mai bine.

Amprenta memoriei este măsurată prin însumarea dimensiunii setului rezidențial (RSS) a proceselor și indică supraîncărcarea de memorie a schemei CCoW. Rezultatele sunt rezumate în Figura 3. Configurația originală fără precopie este desemnată „CoW”, iar valorile de performanță sunt normalizate la cele ale configurației CoW.

În general, performanța sistemului nu s-a îmbunătățit semnificativ într-o regiune mică și s-a înrăutățit cu regiuni de 32 KB. În timp ce în configurațiile de regiuni mai mari s-a observat o îmbunătățire apreciabilă. Cu toate acestea, modificarea performanței a fost marginală până la dimensiunea regiunii de 512 KB. Acest lucru se datorează posibilităților limitate de exploatare în regiunile mici. Taxa generală de monitorizare a fost constantă, indiferent de dimensiunea regiunii.
Când regiunea era de 2 MB, beneficiul a depășit costul general și putem observa o îmbunătățire a performanței cu aproximativ 0%. Cu toate acestea, performanța a fost îmbunătățită în continuare cu dimensiuni mai mari ale regiunilor.
Amprenta memoriei a prezentat o tendință diferită de cea a performanței. Chiar și cu o dimensiune mică a regiunii, a suferit o cantitate considerabilă de memorie, care crește pe măsură ce dimensiunea regiunii crește. Cu toate acestea, nu a crescut mult chiar și cu regiunile de 2 MB. Din această evaluare, putem concluziona că regiunile de 2 MB oferă un beneficiu maxim de performanță cu o cantitate rezonabilă de supraîncărcare a memoriei.

Astfel, am folosit această dimensiune a regiunii pentru restul studiului. În continuare, pentru a găsi cel mai bun prag de acoperire pentru pre-copie, măsurăm debitul și amprenta memoriei în timp ce schimbăm valoarea pragului CCoW de la 70% la 95%. Figura 4 rezumă. rezultatele măsurătorii.
Toate valorile sunt normalizate la configurația originală „CoW”. Numărul de lângă „CCoW-” este valoarea de prag pentru configurație. Configurația „CCoW-All” este o configurație extremă în care pragul este setat la zero, astfel încât fiecare eroare de pagină să copieze o regiune de 2 MB. Această configurație va fi efectiv similară cu sistemul a cu o pagină uriașă.
Când valoarea pragului este mare, sistemul precopiază numai dacă este foarte încrezător. Astfel, există o oportunitate de exploatare redusă, afișând astfel o ușoară îmbunătățire a performanței. În schimb, atunci când valoarea pragului este prea mică, există o șansă mare ca sistemul să prezică greșit regiunile cu localitate joasă ca regiuni cu localitate înaltă. Regiunile localității Precoplow suportă cheltuieli generale fără niciun beneficiu, compensând beneficiul de performanță.
Astfel, performanța atinge vârfuri la un prag de 80% și scade pentru valorile de prag mai mici. Suprafața spațiului este invers proporțională cu valoarea pragului. Cu cât pragul configurației sistemului este mai mic, cu atât mai multe pagini sunt copiate, crescând astfel amprenta memoriei. Pentru configurația „CCoW-All”, am observat o memorie foarte mare.
În această configurație, fiecare eroare de pagină are o copie a unei regiuni de 2 MB, făcând în cele din urmă procesul părinte să copieze datele originale aproximativ în întregime.
Deoarece procesul copil poate rula pentru două perioade de bifurcație, există mai multe instanțe copil simultan, ceea ce face ca amprenta de memorie acumulată să fie foarte mare. Pe baza acestei evaluări, am folosit un prag de acoperire de 80% pentru restul studiului.

For more information:1950477648nn@gmail.com






