¿Cómo puedo saber cuántos Cores SQL Server está usando realmente?

17

Tengo dos servidores que ejecutan SQL Server.

  • Servidor 1: SQL Server 2008 R2 Express (4 núcleos)
  • Servidor 2: SQL Server 2012 Developer Edition (8 núcleos)

Que yo sepa, SQL Server 2008 R2 Express solo debe usar un núcleo.

La versión para desarrolladores de SQL Server 2012 debe usar los 8 núcleos.

Sin embargo, si ejecuto el siguiente comando dentro de la consulta SQL en SQL Server 2008 R2 Express, muestra 4 núcleos.

select scheduler_id, cpu_id, status, is_online 
from sys.dm_os_schedulers 
where status = 'VISIBLE ONLINE'

¿Estoy usando el comando correcto para medir el uso?

marc_s
fuente

Respuestas:

7

La edición Express está limitada por 1 procesador, no 1 núcleo:

SQL Server admite el número especificado de sockets de procesador multiplicado por el número de CPU lógicas en cada socket. Por ejemplo, lo siguiente se considera un procesador único para los fines de esta tabla: Un procesador de un solo núcleo e hiperprocesador con 2 CPU lógicas por socket. Un procesador de doble núcleo con 2 CPU lógicas. Un procesador de cuatro núcleos con 4 CPU lógicas. SQL Server tiene licencia por socket de procesador y no por CPU lógica .

http://msdn.microsoft.com/en-us/library/ms143760(v=sql.105).aspx

Y sí, se pueden usar sys.dm_os_schedulers para garantizar que los 4 núcleos estén asignados con programadores.

Stan
fuente
1

Use este comando con un sistema operativo superior a 2007:

->> WMIC CPU Get DeviceID,NumberOfCores,NumberOfLogicalProcessors

Para servidores físicos DeviceID ~ Socket, NumberofCores ~ CPU's, NumberOfLogicalProcessors ~ Threads. MS ahora usa un modelo de licencia basado en el núcleo. Las CAL están fuera de alcance. Busque "Guía de licencias de Microsoft SQL Server 2012" si necesita más información.

El siguiente ejemplo sería necesario para costear / cobrar la licencia de SQL Server de 2 paquetes * 4 CPU para Standard / Enterprise. Total de 8 núcleos (CPU).

DeviceID  NumberOfCores  NumberOfLogicalProcessors
CPU0      4              8
CPU1      4              8

La pestaña Rendimiento en el Administrador de tareas o la pestaña CPU en el Monitor de recursos mostrará 16 CPU en ejecución. Procesadores Lógicos. Busque "Intel X5550", que es el procesador que estaba comprobando. Intel tiene todas las especificaciones en el sitio web ark.intel.com para verificar la información necesaria.

gameon6671
fuente