Programadores de CPU sin conexión


9

Me conecté a un nuevo sistema de clientes y ejecuté sp_blitz para ver qué estaba temblando. Informa que " CPU Schedulers Offline ", que es nuevo para mí.

SQL Server no puede acceder a algunos núcleos de CPU debido a problemas de enmascaramiento o licencias de afinidad.

Justo, ejecuto la consulta base

SELECT
    DOS.is_online
,   DOS.status
,   DOS.*
FROM
    sys.dm_os_schedulers AS DOS
ORDER BY
    1;

Eso informa que tengo 8 configurados en VISIBLE OFFLINE, 43 en línea. Que yo sepa, nadie en este cliente habría establecido intencionalmente ninguna afinidad de CPU.

Decidí ver si podía desempaquetarlo. Cuando miro la ventana de propiedades, veo 40 procesadores disponibles y ninguno de ellos está configurado para tener afinidad.

ingrese la descripción de la imagen aquí

Por qué hay 40 que muestran todavía 43 entradas en dm_os_schedulers donde is_online es verdadero también parece curioso. Los cpu_id de los 8 sin conexión son de 32 a 39.

sys.configurations parece coincidir con la afinidad no explícitamente en

name                 value  value_in_use  description
affinity I/O mask    0      0             affinity I/O mask
affinity mask        0      0             affinity mask
affinity64 I/O mask  0      0             affinity64 I/O mask
affinity64 mask      0      0             affinity64 mask

Esta no es una edición Enterprise, por lo que el abuelo de CAL no debería ser un factor aquí, pero puedo hacer esa pregunta mañana si es necesario

ProductVersion  ProductLevel  ProductUpdateLevel  Edition
11.0.5058.0     SP2           NULL                Standard Edition (64-bit)

Al ejecutar las consultas de diagnóstico de Glenn Berry, esto podría ser relevante

  • Fabricante del sistema: 'Dell Inc.', Modelo del sistema: 'PowerEdge R720'.
  • Intel (R) Xeon (R) CPU E5-2680 v2 @ 2.80GHz

Entonces, ¿qué da? ¿Estoy virtualizado y no lo sé? ¿Hay algún otro lugar que debería buscar para determinar por qué SQL Server no puede usar algunas de las CPU?

Artículos de referencia

Una lista de artículos que leí pero que claramente no comprendí lo suficientemente bien como para responder mi propia pregunta

Respuestas:


13

Lo que ves tiene mucho sentido dada la información disponible.

SQL Server 2012 Standard Edition se limita al menor de 4 sockets o 16 núcleos físicos.

Como tiene 40 núcleos (probablemente 2 sockets 10 núcleos + HT) 16 núcleos físicos serán 32 núcleos lógicos (debido a HT). Si tiene 40 en total, ESPERO que 8 sea VISIBLE OFFLINE debido a la licencia.

Características compatibles con las ediciones de SQL Server 2012 - Límites de escala entre cuadros

Editar: Información adicional

Dependiendo del sistema operativo involucrado, los horarios pueden estar vinculados a las CPU que también están haciendo una configuración de memoria NUMA desequilibrada para su sistema. Si bien es muy poco probable que esto le cause algún problema (ya que no se notó que todas las CPU se estaban utilizando en primer lugar), podría tener un impacto mucho mayor en un sistema muy utilizado donde el acceso a la memoria externa realmente puede agregar.


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.