cache-bench es un script de Python que permite evaluar el impacto de la configuración de la memoria virtual (vm.swappiness, vm.watermark_scale_factor, Multigenerational LRU Framework, entre otros) en el rendimiento de la ejecución de tareas cuya realización depende de la caché en las operaciones de lectura de archivos en condiciones de baja memoria. El código está abierto bajo la licencia CC0.
La forma principal de uso es leer archivos de un directorio especificado de forma aleatoria y añadirlos a una lista, hasta que se haya leído una cantidad determinada de mebibytes. Hay dos modos de operación disponibles:
- El primero, auxiliar, se utiliza para crear un directorio de un volumen especificado. En este directorio se crearán una cierta cantidad de archivos de mebibyte con nombres aleatorios.
- El segundo modo, principal, es el modo de lectura de archivos de un directorio especificado de forma aleatoria. Durante la lectura, aumenta el volumen de memoria consumida por el script, y la velocidad de lectura del volumen de archivos especificado depende del volumen de las páginas de archivo en caché.
Parte del proyecto es también el script auxiliar drop-cache, que se recomienda ejecutar antes de comenzar la prueba. Durante la ejecución del script en modo de lectura, se muestra el tiempo total de ejecución, la velocidad media de lectura y el nombre del último archivo leído. El script también permite registrar los resultados en un archivo con marcas de tiempo.
Fuente: opennet.ru
