CCoW: ottimizzazione del copy-on-Write considerando la località spaziale nei carichi di lavoro, parte 5

Apr 03, 2024

4. Valutazione

Questa sezione riporta i risultati della valutazione dello schema CCoW proposto. Abbiamo implementato CCoW nel kernel Linux v5.7.7 e ci sono volute circa 400 righe di codice. La valutazione è stata eseguita su un server con una CPU Intel Xeon Gold 5215 e 128 GB di memoria.

La relazione tra risultati della valutazione e memoria ha sempre attirato molta attenzione. La ricerca mostra che i buoni risultati della valutazione sono strettamente correlati a una memoria eccellente.

Da un lato, buoni risultati di valutazione richiedono l’apprendimento e la padronanza ripetuti dei punti di conoscenza e un alto grado di comprensione e padronanza approfondita. Questi richiedono un buon supporto di memoria. Soprattutto negli esami, i candidati hanno bisogno di rispondere rapidamente e di rispondere alle domande in modo corretto e rapido in un breve periodo, il che richiede un'ottima memoria come supporto di base. Solo con una memoria eccellente puoi dare il meglio di te sotto pressione.

D’altro canto, buoni risultati di valutazione possono anche favorire il miglioramento della memoria. Quando otteniamo risultati di valutazione eccellenti, proveremo un senso di realizzazione e soddisfazione. Queste emozioni positive hanno un impatto positivo sulla nostra memoria e sul nostro apprendimento. Un buon stato emotivo può favorire la connessione e la trasmissione delle informazioni delle cellule nervose nel cervello, migliorando così la memoria.

In sintesi, esiste una relazione di rafforzamento reciproco tra i risultati della valutazione e la memoria. Per ottenere risultati di valutazione migliori, dobbiamo migliorare continuamente la nostra memoria e ottenere buoni risultati di valutazione può migliorare ulteriormente la nostra memoria. Dovremmo mettere da parte le emozioni negative, trattare i risultati della valutazione e il processo di apprendimento con un atteggiamento positivo, lavorare duro e persistentemente e credere che saremo in grado di avere successo! Si può vedere che dobbiamo migliorare la memoria, e la Cistanche deserticola può migliorare significativamente la memoria, perché la Cistanche deserticola ha effetti antiossidanti, antinfiammatori e antinvecchiamento, che possono aiutare a ridurre l’ossidazione e le reazioni infiammatorie nel cervello, proteggendo così il cervello. salute del sistema nervoso. Inoltre, Cistanche deserticola può anche favorire la crescita e la riparazione delle cellule nervose, migliorando così la connettività e la funzione delle reti neurali. Questi effetti possono aiutare a migliorare la memoria, l’apprendimento e la velocità di pensiero e possono anche prevenire lo sviluppo di disfunzioni cognitive e malattie neurodegenerative.

increase memory power

Fare clic su Conosci per migliorare la memoria a breve termine

Per analizzare varie caratteristiche prestazionali, abbiamo utilizzato un microbenchmark interno. Per valutare carichi di lavoro realistici, abbiamo utilizzato il benchmark del servizio cloud Yahoo (YCSB) [30,31] per Redis [4]. Tali programmi sono configurati con i parametri predefiniti se non diversamente specificato. Poiché CCoW è implementato a livello di kernel, non è stata richiesta alcuna modifica per le applicazioni utente.

4.1. Caratterizzazione delle prestazioni CCoW

Poiché CCoW è controllato da due parametri, vale a dire la dimensione della regione e la soglia di copertura, questi parametri determinano le prestazioni e il comportamento di esecuzione di CCoW.

In questo senso, in primo luogo, abbiamo valutato l'influenza della dimensione della regione sulle prestazioni e sui costi generali di CCoW. Abbiamo creato un programma di microbenchmark per valutare l'efficienza di copyon-write. Il programma è modellato sul comportamento di esecuzione di Redis. Innanzitutto popola i 16 GB di spazio di memoria suddivisi in blocchi da 1 KB, quindi viene selezionato un blocco e aggiornato ripetutamente con i dati predefiniti.

Il benchmark ripete le operazioni finché non vengono scritti 160 GB di dati. I blocchi target vengono selezionati in base alla distribuzione Zipfi con il parametro=1.0 per fornire una quantità ragionevole di località negli accessi.

Queste operazioni simulano le operazioni di aggiornamento di Redis con carichi di lavoro YCSB. Per imitare la funzionalità di snapshot di Redis, il benchmark periodicamente forkchild'shildprocess. Dopo aver creato il processo figlio, le prestazioni del processo di benchmark principale diminuiscono drasticamente a causa del maggiore sovraccarico di gestione degli errori di pagina.
Le prestazioni vengono recuperate e stabilizzate nel tempo poiché rimangono meno pagine per la misura di misura copy-on-writ. Il tempo dal calo delle prestazioni al ripristino è pari al 99% delle prestazioni normali utilizzando la configurazione CoW originale e utilizzando questo tempo come intervallo per le fork.

Il processo figlio è stato mantenuto inattivo per due intervalli di fork prima di uscire. Misuriamo il throughput medio del benchmark e l'impronta di memoria del processo variando la dimensione della regione da 32 KB a 2 MB. Il throughput indica il miglioramento delle prestazioni con CCoW, quindi maggiore è, meglio è.

increase memory

L'impronta di memoria viene misurata sommando le dimensioni del set residenziale (RSS) dei processi e indica l'overhead di memoria dello schema CCoW. I risultati sono riepilogati nella Figura 3. La configurazione originale senza precopia è indicata come "CoW" e i valori delle prestazioni sono normalizzati a quelli della configurazione CoW.

increase brain power

Nel complesso, le prestazioni del sistema non sono migliorate in modo significativo in una regione piccola e sono peggiorate con regioni da 32 KB. Mentre nelle configurazioni regionali più ampie è stato osservato un miglioramento apprezzabile. Tuttavia, il cambiamento delle prestazioni è stato marginale fino alla dimensione della regione di 512 KB. Ciò è dovuto alle limitate opportunità di sfruttamento nelle piccole regioni. Il sovraccarico del monitoraggio era costante indipendentemente dalle dimensioni della regione.

Quando la regione era di 2 MB, il vantaggio ha superato il sovraccarico e possiamo osservare un miglioramento delle prestazioni di circa il 0%. Tuttavia, le prestazioni sono state ulteriormente migliorate con regioni di dimensioni maggiori.

L'impronta della memoria ha mostrato un andamento diverso rispetto a quello delle prestazioni. Anche con una regione di piccole dimensioni, si è verificata una notevole quantità di memoria riempita, che aumenta all'aumentare della dimensione della regione. Tuttavia, non è aumentato molto nemmeno con le regioni da 2 MB. Da questa valutazione possiamo concludere che le regioni da 2 MB forniscono il massimo vantaggio in termini di prestazioni con un ragionevole sovraccarico di memoria.

ways to improve brain function

Pertanto, abbiamo utilizzato questa dimensione della regione per il resto dello studio. Successivamente, per trovare la migliore soglia di copertura per la pre-copia, misuriamo la velocità effettiva e l'impronta di memoria modificando il valore della soglia CCoW dal 70% al 95%. La Figura 4 riassume i risultati della misurazione.

Tutti i parametri sono normalizzati rispetto a quelli della configurazione originale "CoW". Il numero accanto a "CCoW-" è il valore di soglia per la configurazione. La configurazione "CCoW-All" è una configurazione estrema in cui la soglia è impostata su zero in modo che ogni errore di pagina copi una regione di 2 MB. Questa configurazione sarà effettivamente simile al sistema a con una pagina enorme.

Quando il valore di soglia è elevato, il sistema esegue la precopia solo se ha un'elevata confidenza. Pertanto, le opportunità di sfruttamento diminuiscono, mostrando così un leggero miglioramento delle prestazioni. Al contrario, quando il valore soglia è troppo piccolo, c’è un’alta probabilità che il sistema erroneamente preveda le regioni a bassa località come regioni ad alta località. Le regioni delle località di Precoplow sostengono spese generali senza alcun beneficio, compensando il beneficio in termini di prestazioni.

Pertanto, le prestazioni raggiungono il picco con una soglia dell'80% e diminuiscono con valori di soglia inferiori. Lo spazio in eccesso è inversamente proporzionale al valore di soglia. Più bassa è la soglia della configurazione del sistema, più pagine verranno copiate, aumentando così l'occupazione di memoria. Per la configurazione 'CCoW-All' abbiamo osservato un consumo di memoria molto elevato.

In questa configurazione, ogni errore di pagina comporta una copia di una regione di 2 MB, facendo sì che il processo principale copi i dati originali approssimativamente nella loro interezza.

Poiché il processo figlio può essere eseguito per due periodi fork, esistono più istanze figlio contemporaneamente, rendendo così l'impronta di memoria accumulata molto grande. Sulla base di questa valutazione, abbiamo utilizzato una soglia di copertura pari all'80% per il resto dello studio.

improve your memory


For more information:1950477648nn@gmail.com

Potrebbe piacerti anche