¿Cómo sabría si debería deshabilitar NUMA virtual en máquinas virtuales que ejecutan aplicaciones más antiguas?

9

De los documentos de VMware:

La topología NUMA virtual está disponible para las máquinas virtuales de la versión 8 del hardware y se habilita de forma predeterminada cuando el número de CPU virtuales es mayor que ocho. También puede influir manualmente en la topología virtual de NUMA utilizando opciones de configuración avanzadas.

Entonces, supongamos que tengo una VM a la que le he asignado 8 CPU: está ejecutando Virtual NUMA. Si tengo una vieja aplicación no compatible con NUMA ejecutándose en el servidor, ¿no funcionaría muy mal o, al menos, no tan bien como lo haría en el modo sin V-NUMA?

Supongo que V-NUMA está habilitado así porque si un proveedor de aplicaciones recomienda 8 o más núcleos, el software probablemente sea consciente de NUMA. ¿O hay muchas aplicaciones con soporte multinúcleo incorporado, pero no soporte NUMA?

¿Cómo identificaría un cuello de botella causado por este posible problema?

Editar: ¿Pensó que hay una métrica en vCenter para monitorear llamadas NUMA remotas?

red888
fuente
44
He eliminado mi respuesta propuesta porque no creo que sea lo que estás buscando. Si tuviera más información sobre la configuración de su host, podría proporcionarle más asistencia. Mi opinión personal es que, en general, vNUMA no daña las aplicaciones que no son numa, pero eso no responde solo a una opinión. Hay una gran cantidad de variables que pueden afectar el rendimiento de VM y en mis años trabajando con VMware nunca he encontrado que vNUMA sea el culpable de un problema de rendimiento.
Stewpudaso

Respuestas:

1

El artículo: " NUMA Deep Dive Part 1: From UMA to NUMA " recomienda " Intel Memory Latency Checker v3.5 ", un artículo más corto " VMware vSphere - ¡Por qué es tan importante verificar la configuración de NUMA! " (De donde obtuve ese enlace) explica:

"Lo principal es que el acceso a la memoria de la CPU es siempre el más rápido, cuando la CPU puede acceder a su memoria local. Los Nodos NUMA son pares de CPU / Memoria. Normalmente, el zócalo de la CPU y los bancos de memoria más cercanos construyeron un Nodo NUMA. Cada vez que una CPU necesita acceder a la memoria de otro nodo NUMA, no puede acceder a ella directamente, pero se requiere que acceda a ella a través de la CPU que posee la memoria ".

Configure su NUMA correctamente, con suficiente memoria para cada CPU, antes de iniciar su VMM y asignar vNUMA.

En VMware puede usar esxtop, escriba "m", "f" y "G" para habilitar la información NUMA. Lea más sobre esxtop aquí: YellowBricks y los documentos antiguos en VMWare: " Interpretando las estadísticas de esxtop ".

Una vez que NUMA está sintonizado, puede probar que su asignación de vNUMA no está utilizando memoria no local utilizando la herramienta de Intel.

Robar
fuente