cache-bench è uno script Python che consente di valutare l'impatto delle impostazioni della memoria virtuale (vm.swappiness, vm.watermark_scale_factor, Multigenerational LRU Framework e altre) sulle prestazioni dell'esecuzione delle attività, il cui completamento dipende dalla memorizzazione nella cache delle operazioni di lettura dei file in condizioni di carenza di memoria. Il codice è rilasciato con licenza CC0.
Il modo principale di utilizzo consiste nella lettura di file da una directory specificata in ordine casuale e nell'aggiunta a un elenco, fino a quando viene letta una quantità prestabilita di mebibyte. Sono disponibili due modalità di funzionamento:
- La prima modalità, accessoria, serve a creare una directory di dimensioni specificate. In essa vengono creati un certo numero di file di mebibyte con nomi casuali.
- La seconda modalità, principale, è la modalità di lettura dei file da una directory specificata in ordine casuale. Durante la lettura, aumenta il volume di memoria utilizzata dallo script, e la velocità di lettura della quantità specificata di file dipende dal volume delle pagine di file memorizzate nella cache.
Una parte del progetto è anche lo script accessorio drop-cache, che si raccomanda di eseguire prima dell'inizio del test. Durante l'esecuzione dello script in modalità lettura, vengono visualizzati il tempo totale di esecuzione, la velocità media di lettura e il nome dell'ultimo file letto. Lo script consente inoltre di registrare i risultati in un file con timestamp.
Fonte: opennet.ru
