
He estado ejecutando un sistema de demostración en Linux con el siguiente kernel:
2.6.32-400.1.1.el5uek #1 SMP lunes 25 de junio 20:25:08 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
Y tan pronto como se produce el intercambio, el uso de la CPU en el sistema aumenta hasta casi el 100% de ocupación, de los cuales alrededor del 90% es uso de la CPU del sistema. Me dijeron que es lo esperado porque el demonio de la página de Linux se activa y comienza a escribir el fragmento de memoria para intercambiar solo cuando se queda sin memoria (o la memoria libre es inferior a 0,5 G), lo que resulta en un gran uso de la CPU del sistema. "Swappiness" es 60 en el sistema.
¿Se espera que el uso de la CPU llegue al 100% cuando se realiza el intercambio en Linux?
La razón por la que tuve la pregunta anterior es que el comportamiento anterior cambió cuando migro la demostración a otro sistema con el siguiente kernel de Linux:
2.6.39-400.128.14.el5uek #1 SMP Sábado 10 de mayo 00:06:52 PDT 2014 x86_64 x86_64 x86_64 GNU/Linux
La única diferencia que noté en el parámetro vm en el sistema migrado es el parámetro min_free_kbytes, cambiado a 524288 en el sistema migrado frente a 51200 en el sistema premigrado.
En el sistema migrado, cuando la memoria libre llega a menos de 1,5 G, se produce el intercambio, luego el uso de la CPU aumenta un poco, algo así como del 30% al 40%, y el rendimiento de la aplicación se vuelve errático solo por un corto período y luego Todo vuelve a la normalidad como antes del cambio.
¿Qué hace que el sistema migrado se comporte de manera tan diferente, que el uso de la CPU no aumente al 100% cuando se realice el intercambio?
Es un sistema de demostración muy importante y la explicación de las dos preguntas anteriores será muy útil. Cualquier idea será muy apreciada.