SQL Server가 실제로 사용중인 코어 수를 어떻게 알 수 있습니까?


17

SQL Server를 실행하는 두 대의 서버가 있습니다.

  • 서버 1 : SQL Server 2008 R2 Express (4 코어)
  • 서버 2 : SQL Server 2012 Developer Edition (8 코어)

내가 아는 한 SQL Server 2008 R2 Express는 하나의 코어 만 사용해야합니다.

SQL Server 2012 Developer 버전은 8 개의 코어를 모두 사용해야합니다.

그러나 SQL Server 2008 R2 Express의 SQL 쿼리 내에서 다음 명령을 실행하면 4 개의 코어가 표시됩니다.

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

올바른 명령을 사용하여 사용량을 측정하고 있습니까?

답변:


7

Express Edition은 1 개의 코어가 아닌 1 개의 프로세서로 제한됩니다.

SQL Server는 지정된 수의 프로세서 소켓에 각 소켓의 논리 CPU 수를 곱한 값을 지원합니다. 예를 들어, 다음 표는이 표에서 단일 프로세서로 간주됩니다. 소켓 당 2 개의 논리 CPU가있는 단일 코어, 하이퍼 스레드 프로세서. 2 개의 논리 CPU가있는 듀얼 코어 프로세서. 4 개의 논리 CPU가있는 쿼드 코어 프로세서. SQL Server는 논리적 CPU 기반이 아니라 프로세서 소켓 별로 라이센스가 부여 됩니다 .

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

그렇습니다. sys.dm_os_schedulers를 사용하여 4 개의 코어가 모두 스케줄러와 매핑되도록 할 수 있습니다.


1

2007보다 큰 OS에서이 명령을 사용하십시오.

->> WMIC CPU Get DeviceID,NumberOfCores,NumberOfLogicalProcessors

물리적 서버의 경우 DeviceID ~ 소켓, NumberofCores ~ CPU, NumberOfLogicalProcessors ~ 스레드 MS는 이제 코어 기반 라이센스 모델을 사용합니다. CAL이 범위를 벗어났습니다. 자세한 정보가 필요하면 "Microsoft SQL Server 2012 라이센스 안내서"를 검색하십시오.

표준 / 엔터프라이즈 용 2 팩 * 4 CPU SQL Server 라이센스를 비용 / 과금하려면 아래 예가 필요합니다. 총 8 개의 코어 (CPU).

DeviceID  NumberOfCores  NumberOfLogicalProcessors
CPU0      4              8
CPU1      4              8

작업 관리자의 성능 탭 또는 리소스 모니터의 CPU 탭에 16 개의 CPU 실행이 표시됩니다. 논리 프로세서. 내가 확인한 프로세서 인 "Intel X5550"을 검색하십시오. 인텔은 웹 사이트 ark.intel.com 에 모든 정보를 제공하여 필요한 정보를 x 점검합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.