"Memory overcommit" es un término utilizado en virtualización para describir la situación en la que la cantidad total de memoria asignada a las máquinas virtuales supera la cantidad de memoria física disponible en el host. Esto puede ocurrir porque el sistema operativo (SO) del host y/o el software de virtualización permiten que se asigne memoria a las máquinas virtuales aunque no esté disponible, asumiendo que no todas las máquinas virtuales utilizarán toda la memoria asignada todo el tiempo.
Si bien este enfoque puede aumentar la utilización general de los recursos, también puede conducir a problemas si las máquinas virtuales comienzan a utilizar más memoria de la que está disponible, ya que esto puede hacer que el host comience a intercambiar páginas al disco, lo que puede conducir a una degradación significativa del rendimiento.
Hay varias maneras de evitar o mitigar los efectos de la sobrecompromiso de memoria, como el uso de técnicas como el ballooning de memoria o la asignación dinámica de memoria, que permiten al host recuperar la memoria no utilizada de las máquinas virtuales cuando sea necesario.
¿Qué es el overcommit de la CPU?
El overcommit de la CPU es la asignación de más CPUs virtuales a una VM que las que hay en el host. Esto puede hacerse mediante:
1) Asignando más CPUs virtuales a la VM que procesadores físicos hay en el host, o
2) Usando una técnica de programación de CPU que permite que múltiples CPUs virtuales compartan un único procesador físico.
Hay algunas razones por las que puede querer hacer esto:
1) Para mejorar la densidad de VM - si usted tiene una gran cantidad de VMs infrautilizadas, puede empaquetarlas más estrechamente en menos hosts mediante el uso de CPU overcommit.
2) Para mejorar el rendimiento de las VMs - si sus VMs están limitadas por la CPU, asignar más CPUs virtuales puede ayudar a mejorar su rendimiento.
Sin embargo, el uso de la sobreasignación de CPU también tiene algunas desventajas potenciales:
1) Puede conducir a un menor rendimiento general - si su anfitrión está muy cargado, la sobrecarga de la CPU adicional de la ejecución de múltiples máquinas virtuales puede conducir a un menor rendimiento para todas las máquinas virtuales en el host.
2) Puede conducir a una mayor contención por los recursos - si varias máquinas virtuales compiten por las mismas CPUs físicas, esto puede conducir a problemas de rendimiento para todas las máquinas virtuales involucradas.
3) Puede ser difícil de predecir o controlar - si sobrecompromete sus CPUs, puede ser difícil predecir o controlar el rendimiento de sus VMs.
4) Puede ser difícil de solucionar: si experimentas problemas de rendimiento, puede ser difícil determinar si el problema se debe al exceso de compromiso de la CPU o a algún otro factor.
¿Qué es la sobresuscripción de memoria de la GPU?
La sobresuscripción de la memoria de la GPU es una técnica de gestión de la memoria utilizada en el procesamiento de gráficos por ordenador en la que la cantidad de memoria asignada a una GPU supera la cantidad de memoria física disponible en la GPU.
La técnica se utiliza para mejorar la eficiencia del uso de la memoria y puede utilizarse para permitir que una sola GPU renderice varios cuadros simultáneamente.
La sobresuscripción de memoria de la GPU puede utilizarse junto con otras técnicas de gestión de la memoria, como el tiling, para mejorar aún más la eficiencia del uso de la memoria.
¿Son el sobrecompromiso y la debilidad?
El overcommitment es una debilidad si lleva a no poder cumplir las promesas realizadas. Por ejemplo, si alguien se compromete en exceso a asumir demasiados proyectos y luego es incapaz de completarlos todos, eso sería una consecuencia negativa del exceso de compromiso. Sin embargo, si alguien es capaz de gestionar sus compromisos y cumplirlos, el exceso de compromiso puede ser un punto fuerte. Puede demostrar que la persona es fiable y que se puede contar con ella para cumplir sus compromisos.