cache-bench é um script em Python que permite avaliar o impacto das configurações de memória virtual (vm.swappiness, vm.watermark_scale_factor, Multigenerational LRU Framework e outras) no desempenho da execução de tarefas que dependem do cache de operações de leitura de arquivos em condições de falta de memória. O código é aberto sob a licença CC0.
O principal modo de uso é ler arquivos de um diretório especificado de forma aleatória e adicioná-los a uma lista, até que um número determinado de mib seja lido. Dois modos de operação estão disponíveis:
- O primeiro — auxiliar — serve para criar um diretório de um volume especificado. Neste caso, um número específico de arquivos de um mib é criado no diretório com nomes aleatórios.
- O segundo modo — o principal — é o modo de leitura de arquivos de um diretório especificado de forma aleatória. Durante a leitura, o volume de memória consumido pelo script aumenta, e a velocidade de leitura do volume especificado de arquivos depende do volume de páginas de arquivos em cache.
Uma parte do projeto também é o script auxiliar drop-cache, que é recomendado ser executado antes do início do teste. Durante a execução do script no modo de leitura, o tempo total de execução é exibido, a velocidade média de leitura, e o nome do último arquivo lido. O script também permite registrar os resultados em um arquivo com marcas de tempo.
Fonte: opennet.ru
