C-State
Cuando una maquina esta inactiva, con el fin de ahorrar energía, es posible hacer que la cpu entre en modo bajo consumo. Cada cpu tiene varios modos y son llamados de forma colectiva estados C (C-State).
El trabajo de estos modos, es cortar el reloj de las unidades inactivas dentro de la CPU. Cuantas mas unidades se paran, mas ahorro de energía se obtiene, pero se requiere de mas tiempo cuando es necesario “despertar” las VMs para disponer de nuevo el sistema 100% operativo.
¿Problemas en virtualización?
Los estados-C pueden (en algunos casos) suponer un problema en entornos virtuales, ocasionando picos de memoria/cpu o cortes intermitentes de red. El uso del modo Turbo y de los estados C, suele ser el responsable de estos problemas.
Si se encuentra con problemas debido a ello, puede des-habilitar esta funcionalidad.
¿Están los C-State habilitados?
Podemos ver y configurar esta funcionalidad desde la Bios de nuestro servidor. Ello ocasiona que para realizar la comprobación paremos maquinas y reiniciemos el host. Existe, pero, un método para verificar este estado sin necesidad de entrar en la Bios y reiniciar el host.
Verificar C-State en XenServer.
Para ello, abriremos una sesión SSH con nuestros host (mediante putty o a través de XenCenter) y teclearemos:
xenpm get-cpuidle-states | grep total | uniq
• Si Total C-States = 4 ; los C-States están habilitados
• Si Total C-States = 2; Los C-States no están habilitados.
Extra Info:
How to Disable C-States and Turbo Mode on Fujitsu Servers : http://support.citrix.com/article/CTX136863
Hosts Become Unresponsive with XenServer 5.6 on Nehalem and Westmere CPUs: http://support.citrix.com/article/CTX127395