Tabla de contenido

INTRODUCCIÓN

En este artículo se describe la compatibilidad de SQL Server en un entorno con múltiples subprocesos.

Más información

El diseño básico de SQL Server es totalmente funcional en un entorno con subprocesos múltiples. Sin embargo, si usa un entorno con subprocesos múltiples, le recomendamos que haga lo siguiente:

  • Ejecute Microsoft SQL Server 2000 Service Pack 3 (SP3) o un Service Pack posterior.

  • Instale la actualización de seguridad más reciente.

El sistema operativo Microsoft Windows hace que las CPU lógicas de Hyper-Thread aparezcan como CPU físicas. Puesto que SQL Server ya es muy escalable, las CPU adicionales proporcionan a SQL Server la capacidad de usar más procesadores. Para obtener más información sobre la compatibilidad de Microsoft Windows con Hyper-Threading, visite el siguiente sitio web de Microsoft:

http://www.microsoft.com/whdc/system/sysinternals/ht-windows.mspxDebe tener en cuenta lo siguiente cuando esté considerando una implementación de Hyper-Threading:

  • Licencias

  • Asignación de procesador

  • Comportamiento

  • Utilidad de recuento de CPU de Intel

Encontrará más información sobre cada elemento.

Licencias

Cuando Hyper-Threading está habilitado, el sistema básico de entrada de entrada (BIOS) usa una relación lógica de CPU física. Las implementaciones actuales usan las proporciones de 2:1. Esto significa que existen dos (2) CPU lógicas para cada CPU física. Estas relaciones pueden variar en el futuro; sin embargo, Microsoft SQL Server 2000 Service Pack 3 (SP3) y versiones posteriores tienen código de licencia adicional que ajusta las restricciones de licencia para controlar la relación. Por ejemplo, si el código de producto de SQL Server que ha instalado permite una licencia de 4 CPUS con una relación de 2:1, la compilación de SQL Server 2000 SP3 y las versiones posteriores se ajustan y permiten usar 8 CPU. Cuando instale SQL Server, usará el recuento de CPU físico y deje que SQL Server controle la conversión de proporción. Por el contrario, si establece la opción máscara de afinidad , usará los valores de la CPU lógica porque SQL Server usa todas las CPU como si fueran procesadores físicos. Para obtener más detalles sobre las licencias y la configuración admitidas, visite el siguiente sitio web de Microsoft:

http://www.microsoft.com/sql/howtobuy/default.mspx

Asignación de procesador

De forma predeterminada, SQL Server crea un programador de programación de modo de usuario lógico (UMS) para cada procesador según el orden de los procesadores ordinales. En entornos con hiper-subprocesos habilitados, Microsoft Windows hace que todos los procesadores estén disponibles para el proceso de SQL Server como si se tratase de verdaderos procesadores físicos. En la tabla siguiente se muestra una muestra de la asignación lógica y de procesador físico. Tabla de asignación del procesador 1

Medicamentos

Física

0

0

1

1

2

1

2

2

cuatro

0

4

1

6

1

siete

2

Este es otro ejemplo de asignación de procesadores. Tabla 2 de asignación de procesadores

Medicamentos

Física

0

0

1

0

1

1

2

1

cuatro

1

4

1

6

2

siete

2

Cualquiera de las asignaciones es aceptable para SQL Server. Sin embargo, tenga cuidado de no crear una situación en la que SQL Server se limite de forma inesperada a una CPU física cuando se espera que use varias CPU físicas. puede usar la opción máscara de afinidad de SQL Server para cambiar el uso del procesador físico esperado. Para ello, consulte la tabla 1 de asignación de procesadores. Si la máscara de afinidad es 00010001 y está usando el procesador 0 y el procesador 4, los procesadores lógicos en uso se asignan al procesador físico de ejemplo, #0. Esto da como resultado un uso único del procesador físico que admite ambos procesadores lógicos en lugar de dos procesadores físicos. Esta situación probablemente disminuirá el rendimiento. Puede usar una combinación de la opción máscara de afinidad y el parámetro de inicio máscara de afinidad para cambiar el comportamiento predeterminado. Para obtener más información sobre la opción affinity mask o el parámetro de inicio de affinity mask, consulte SQL Server Books online.Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

298402 Descripción de cómo establecer la opción de afinidad de e/s de SQL ServerADVERTENCIA Tenga cuidado al establecer la máscara de afinidad. Puede configurar fácilmente la máscara de afinidad de forma incorrecta usando el mismo procesador físico para admitir dos procesadores lógicos cuando pretendía usar procesadores físicos separados.

Comportamiento

El rendimiento de los entornos con subprocesos múltiples varía. Las pruebas conservadoras han demostrado un aumento de entre 10 y 20 por ciento en las cargas de trabajo de SQL Server, pero los patrones de aplicaciones tienen un efecto significativo. Es posible que algunas aplicaciones no reciban un aumento en el rendimiento aprovechando la tecnología Hyper-Threading. Si los procesadores físicos ya están saturados, el uso de procesadores lógicos puede reducir realmente la carga de trabajo. Por ejemplo, las aplicaciones que generan altos niveles de contención pueden disminuir el rendimiento en un entorno con subprocesos múltiples. Le recomendamos que pruebe minuciosamente su aplicación para asegurarse de que un entorno de subprocesos múltiples le proporciona la ganancia de rendimiento que desea en comparación con la compra de CPU físicas equivalentes. Hyper-Threading puede ser muy útil, pero Hyper-Threading no puede reemplazar la energía completa de una CPU física adicional.Los productos de otros fabricantes que se mencionan en este artículo han sido creados por compañías independientes de Microsoft. Microsoft no ofrece ninguna garantía, ya sea implícita o de otro tipo, sobre la confiabilidad o el rendimiento de dichos productos.El sitio web de Intel tiene una buena información y tutoriales sobre Hyper-Threading (microarquitectura Intel NetBurst). Para obtener más información sobre los sistemas que admiten Hyper-Threading, visite los siguientes sitios web de Intel:

http://software.intel.com/en-us/blogs/2009/06/02/intel-hyper-threading-technology-your-questions-answered http://developer.intel.com

Grado máximo de paralelismo (MAXDOP)

Si desea obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

2806535 Recomendaciones e instrucciones para la opción de configuración ' grado máximo de paralelismo ' en SQL Server

¿Necesita más ayuda?

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Unirse a Microsoft Insider

¿Le ha sido útil esta información?

¿Cuál es tu grado de satisfacción con la calidad del lenguaje?
¿Qué ha afectado a tu experiencia?

¡Gracias por sus comentarios!

×