Ver y borrar el tamaño de caché de ubuntu

Se describe en Documentation/sysctl/vm.txt de la siguiente manera:

drop_caches: Escribir en esto hará que el núcleo elimine cachés, dentries e inodos limpios de la memoria, lo que hará que la memoria quede libre.

Para liberar el caché de página:

eco 1 > /proc/sys/vm/drop_caches

Para liberar dentries e inodos:

eco 2 > /proc/sys/vm/drop_caches

Para liberar pagecache, dentries e inodes:

echo 3 > /proc/sys/vm/drop_caches

Como esta es una operación no destructiva y los objetos sucios no se pueden liberar, el usuario debe ejecutar 'sync' primero.

2. La diferencia entre caché y búfer

  Caché: la caché de alta velocidad es una memoria de pequeña capacidad pero de alta velocidad ubicada entre la CPU y la memoria principal. Dado que la velocidad de la CPU es mucho mayor que la de la memoria principal, la CPU tarda cierto tiempo en acceder directamente a los datos de la memoria. Una parte de los datos que la CPU acaba de usar o reciclar se almacena en la caché. Cuando la CPU utiliza esta parte de los datos nuevamente, se puede recuperar de la caché. Invocar directamente, lo que reduce el tiempo de espera de la CPU y mejora la eficiencia del sistema. La caché se divide además en caché de primer nivel (caché L1) y caché de segundo nivel (caché L2). La caché L1 está integrada dentro de la CPU. La caché L2 generalmente se suelda en la placa base en los primeros días, y ahora también está integrada. dentro de la CPU. La capacidad común es de 256 KB o 512 KB de caché L2.

  Buffer: Buffer, un área utilizada para almacenar datos transferidos entre dispositivos con velocidades asíncronas o dispositivos con diferentes prioridades. A través del búfer, se puede reducir la espera mutua entre los procesos, de modo que cuando se leen datos del dispositivo lento, el proceso operativo del dispositivo rápido no se interrumpirá.

  Búfer y caché en Free: (todos ocupan memoria):

  búfer: la memoria utilizada como caché de búfer, que es el búfer de lectura y escritura del dispositivo de bloque

  caché: memoria como caché de página, caché del sistema de archivos

  Si el valor de la memoria caché es grande, significa que hay muchos archivos en la memoria caché. Si los archivos a los que se accede con frecuencia se pueden almacenar en caché, el disco de lectura IO bi será muy pequeño.

Linux/Centos/Ubuntu borra el caché del sistema y libera los pasos de operación específicos del comando de memoria

  Con el fin de mejorar la eficiencia del acceso al disco, Linux ha realizado algunos diseños cuidadosos.Además del almacenamiento en caché (utilizado en VFS para acelerar la conversión de nombres de ruta de archivo a inodos), también adopta dos métodos principales de caché: caché de búfer y caché de página. . El primero es para leer y escribir bloques de disco, y el segundo es para leer y escribir inodos de archivos. Estos caché reducen efectivamente el tiempo de las llamadas del sistema de E/S (como lectura, escritura, getdents). El método de cálculo disponible para la memoria de Linux: memoria disponible = libre+búferes+caché, borre el caché en el siguiente orden:

opciones relacionadas gratuitas:

lpf@ubuntu:~$ free -h
free: opción inválida -- uso de 'h'
: free [-b|-k|-m|-g] [-l] [-o] [-t] [-s delay ] [-c recuento] [-V]
  -b,-k,-m,-g muestra la salida en bytes, KB, MB o GB
  -l muestra estadísticas detalladas de memoria alta y baja
  -o usa el formato antiguo (no -/ +búferes/línea de caché)
  -t muestra el total de RAM + intercambio
  -s actualiza cada [retraso] segundos
  -c actualiza [recuento] veces
  -V muestra información de la versión y sale

1. Uso de memoria actual: libre -m 

        lpf@ubuntu:~$ free -m
             total de búferes compartidos gratuitos utilizados almacenados en caché

Memoria: 495 481 14 0 137 217
-/+ búfer/caché: 126 368
Intercambio: 509 0 509

Explicación de comandos gratis:

memoria total total

used La cantidad de memoria utilizada

memoria gratis gratis

compartida La cantidad total de memoria compartida por múltiples procesos

búfer Caché de búfer y Caché de página en caché Tamaño de caché de disco

-búferes/memoria caché: usado - búferes - en caché

+búferes/memoria caché: libre + búferes + en caché

2. sync (El comando sync ejecuta la subrutina sync. Si es necesario detener el sistema, ejecute el comando sync para garantizar la integridad del sistema de archivos. El comando sync escribe todos los búfer del sistema no escritos en el disco, incluido el i-node modificado, E/S de bloque retardado y archivos asignados de lectura y escritura, asegúrese de ejecutar este comando antes del paso 3)

3, root@ubuntu:/home/lpf# echo 3 > /proc/sys/vm/drop_caches

4. Comprobar el uso de la memoria: gratis

        root@ubuntu:/home/lpf# free -m
             total de búferes compartidos gratuitos utilizados almacenados en caché
Mem: 495 151 344 0 1 46
-/+ búferes/caché: 102 392
Intercambio: 509 0 509

5, eco 0 > /proc/sys/vm/drop_caches  

   Este es un método relativamente común para liberar el caché, pero se recomienda no usarlo con frecuencia.Si el intercambio no se usa mucho, no puede hacer nada para garantizar el funcionamiento estable del sistema.Una vez que se comienza a usar el intercambio , considere analizarlo Programar o aumentar la memoria física. En circunstancias normales, cuando la aplicación se ejecuta de forma estable en el sistema, el valor gratuito también se mantendrá en un valor estable, aunque pueda parecer relativamente pequeño. Cuando hay problemas como memoria insuficiente, la aplicación no puede obtener la memoria disponible, errores OOM, etc., es aún más necesario analizar las razones de la aplicación, como memoria insuficiente debido a demasiados usuarios, desbordamiento de memoria de la aplicación, etc. De lo contrario , borre el búfer y fuerce Liberar el tamaño de libre solo puede proteger temporalmente el problema.

Supongo que te gusta

Origin blog.csdn.net/wenyue043/article/details/84068935
Recomendado
Clasificación