Aquí hay una respuesta de un técnico en RedHat. Aunque sí creo que la mayoría del hardware empresarial es compatible con NUMA. Y hasta donde sé, VMware también intentará ajustar sus máquinas virtuales en el mismo nodo NUMA siempre que su configuración de CPU se ajuste.
Las experiencias (especialmente con respecto a VMware) serían muy apreciadas.
Esto es cierto "debido" a los servidores modernos. Tenga en cuenta que Multi-CPU / Muli-Core no es lo mismo que NUMA. Hay muchos sistemas Multi-CPU / Core que no tienen NUMA.
Antes de leer mi explicación a continuación, lea el documento de afinidad IRQ anterior, así como las siguientes guías:
Guía de ajuste de rendimiento RHEL 6
Ajuste de rendimiento de baja latencia para RHEL 6
¿Tienes todo lo que lees? ¡Genial, no necesitas saber nada más de mí! ;-) Pero en caso de que estuvieras impaciente, aquí es por qué los quieres ...
IRQbalance evita que todas las solicitudes de IRQ se respalden en una sola CPU. He visto que muchos sistemas con más de 4 núcleos de CPU funcionan lentamente porque todos los procesos en varias CPU están esperando en la CPU 0 para procesar las solicitudes de IRQ de red o almacenamiento. La CPU 0 se ve muy, muy ocupada, todas las otras CPU no están ocupadas, sin embargo, las aplicaciones son muy lentas. Las aplicaciones son lentas porque están esperando sus solicitudes de E / S de la CPU 0.
IRQbalance intenta equilibrar esto de manera inteligente en todas las CPU y, cuando es posible, coloca el procesamiento de IRQ lo más cerca posible del proceso. Puede ser el mismo núcleo, un núcleo en el mismo dado que comparte el mismo caché o un núcleo en la misma zona NUMA.
Debe usar irqbalance a menos que:
Está anclando manualmente sus aplicaciones / IRQ a núcleos específicos por una muy buena razón (baja latencia, requisitos en tiempo real, etc.)
Invitados virtuales. Realmente no tiene sentido porque, a menos que conecte al huésped a CPU e IRQ específicos y hardware de red / almacenamiento dedicado, es probable que no vea los beneficios que obtendría con el metal desnudo. Pero su host KVM / RHEV DEBE estar usando irqbalance y numad y sintonizado .
Otras herramientas de ajuste muy importantes son los perfiles sintonizados y numad. ¡Lee sobre ellos! ¡Usalos, usalos a ellos!
Numad es similar a irqbalance en que trata de asegurarse de que un proceso y su memoria estén en la misma zona numa. Con muchos núcleos, vemos una reducción significativa en las latencias, lo que resulta en un rendimiento confiable mucho más suave bajo cargas.
Si es hábil, diligente y supervisa regularmente o tiene una carga de trabajo muy predecible, puede obtener un mejor rendimiento al anclar manualmente los procesos / IRQ a las CPU. Incluso en estas situaciones, irqbalance y numad se acercan mucho. Pero si no está seguro o su carga de trabajo es impredecible, debe usar irqbalance y numad.