Puede encontrar útil la respuesta de John Nilsson a mi pregunta para purgar el caché a fin de probar si está relacionado con su problema:
sync && echo 1 > /proc/sys/vm/drop_caches
Aunque supongo que la única diferencia real es 1 contra 3
El contenido de /proc/meminfo decirte para qué usa el kernel la memoria RAM.
Puede usar /proc/sys/vm/vfs_cache_pression para obligar al kernel a reclamar la memoria que se utiliza para los cachés relacionados con el sistema de archivos de forma más perezosa o ansiosa.
Tenga en cuenta que es posible que su aplicación solo se beneficie del ajuste de este parámetro si realiza poca o ninguna E/S de disco.
Es posible que desee aumentar vfs_cache_pressure
así como establecer swappiness
a 0
.
Hacer eso hará que el núcleo recupere la memoria caché más rápido, al mismo tiempo que otorgará a los procesos la misma o mayor preferencia a la hora de decidir qué se va a paginar.
Puede solo desea hacer esto si los procesos que le interesan realizan muy poca E/S de disco.
Si un proceso enlazado de E/S de red tiene que intercambiarse para atender solicitudes, eso es un problema y la solución real es ponerlo en un servidor menos competitivo.
Con el swappiness
predeterminado configuración, el kernel casi siempre favorecerá mantener el caché relacionado con FS en la memoria real.
Como tal, si aumenta la presión de caché, asegúrese de ajustar igualmente swappiness
.