Escenarios de NUMA

En equipos que tienen muchas CPU, el hardware de acceso no uniforme a memoria (NUMA) puede mejorar el rendimiento de forma considerable al asignar memoria dedicada a cada CPU. Este tema presenta algunas configuraciones de NUMA, afinidad de CPU y afinidad de conexiones que pueden mejorar el rendimiento de determinados escenarios. Los siguientes valores de configuración afectan a estas configuraciones:

Escenarios útiles

Los siguientes escenarios suelen darse a menudo cuando se utiliza NUMA.

A. No existe afinidad de puertos con NUMA

Se trata del estado predeterminado en un equipo con NUMA de hardware y una única instancia de SQL Server. Todo el tráfico entra por un solo puerto y se distribuye por turnos a todos los nodos NUMA que estén disponibles. NUMA mejora la proximidad de la memoria y el acceso a la CPU, y aumenta el número de subprocesos de E/S y de escritura diferida. Una vez establecidas las conexiones, el nodo se convierte en su ámbito, , lo que proporciona el equilibrio automático de la carga entre los nodos NUMA. Las aplicaciones cliente pueden conectarse a un solo puerto y su implementación es más fácil.

Una conexión utiliza cualquier nodo NUMA.

B. Se asocia un único puerto a varios nodos para mejorar el rendimiento de una aplicación prioritaria

Configure la afinidad de un puerto con varios nodos NUMA de hardware para dar servicio a una aplicación de mayor prioridad. Configure la afinidad de un segundo puerto con otro nodo NUMA de hardware para dar servicio a una aplicación secundaria. La memoria y los recursos de CPU de las dos aplicaciones están asignados de forma desequilibrada, proporcionando así a la aplicación principal el triple de memoria local y el triple de recursos de CPU en comparación con la aplicación secundaria. La aplicación secundaria puede ser una segunda instancia de Motor de base de datos, una función menos importante de la misma instancia de Motor de base de datos o incluso la misma base de datos. Así puede crearse una ejecución de subprocesos prioritaria mediante el uso de recursos adicionales para la conexión que se favorece.

Un puerto se conecta a varios nodos NUMA.

C. Se asocian varios puertos a varios nodos

Es posible asignar varios puertos a los mismos nodos NUMA. Esto permite configurar permisos distintos para varios puertos. Por ejemplo, puede restringir de forma estricta el acceso proporcionado a través de un puerto mediante el control de los permisos del extremo TCP correspondiente. En este ejemplo, el puerto 1450 está disponible para toda la intranet. El puerto 1433 está abierto a Internet a través de un firewall, pero el acceso es muy restringido. Ambos puertos utilizan NUMA al completo y por igual.

Varios puertos se conectan a todos los nodos NUMA disponibles