CPU 스케줄러 오프라인


9

새 클라이언트 시스템에 로그온 한 후 sp_blitz를 실행하여 흔들리는 것이 무엇인지 확인했습니다. " CPU Schedulers Offline "은 저에게 새로운 것으로보고합니다.

선호도 마스킹 또는 라이센스 문제로 인해 일부 CPU 코어에 SQL Server에 액세스 할 수 없습니다.

공정하게, 나는 기본 쿼리를 실행

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

그것은 8을 VISIBLE OFFLINE으로, 43은 온라인으로 설정했다고보고합니다. 내가 아는 한,이 클라이언트의 어느 누구도 의도적으로 CPU 선호도를 설정하지 않았을 것입니다.

나는 그것을 풀 수 있는지 확인하기로 결정했다. 속성 창을 보면 40 개의 프로세서를 사용할 수 있으며 그 중 어느 것도 선호도를 설정하지 않았습니다.

여기에 이미지 설명을 입력하십시오

dm_os_schedulers에 40 개가 아직 43 개 항목을 표시하는 이유는 is_online이 참인 것 같습니다. 오프라인 8 개의 cpu_id는 32-39입니다.

sys.configurations가 선호도가 명시 적으로 설정되어 있지 않은 것으로 보입니다.

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

이것은 Enterprise Edition이 아니므로 CAL 할아버지 여기에 영향을 미치지 않아야하지만 필요하다면 내일 그 질문을 할 수 있습니다.

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

Glenn Berry의 진단 쿼리를 실행하면 관련이 있습니다.

  • 시스템 제조업체 : 'Dell Inc.', 시스템 모델 : 'PowerEdge R720'.
  • 인텔 ® 제온 ® CPU E5-2680 v2 @ 2.80GHz

그래서 무엇을 제공합니까? 내가 가상화하고 모르는가? SQL Server가 일부 CPU를 사용할 수없는 이유를 확인하기 위해 다른 곳을 찾아야합니까?

참고 기사

내가 읽었지만 분명히 내 자신의 질문에 대답하기에 충분히 이해하지 못한 기사 목록

답변:


13

당신이 보는 것은 정보가 주어지면 완벽하게 이해됩니다.

SQL Server 2012 Standard Edition은 4 개의 소켓 또는 16 개의 물리적 코어로 제한됩니다.

40 개의 코어 (2 개의 소켓 10 코어 + HT)가 있으므로 16 개의 물리적 코어는 HT 때문에 32 개의 논리 코어가됩니다. 총 40 개를 보유한 경우 라이센스로 인해 8이 오프라인으로 보일 것으로 예상됩니다.

SQL Server 2012 에디션에서 지원하는 기능-크로스 박스 스케일 제한

편집 : 추가 정보

관련된 OS에 따라 스케줄이 시스템에 대해 불균형 NUMA 메모리 구성을 수행하는 CPU에 바인딩 될 수 있습니다. 이로 인해 문제가 발생할 가능성 은 거의 없지만 (모든 CPU가 처음에 사용되었다는 것을 알지 못했기 때문에) 외부 메모리 액세스가 실제로 사용될 수있는 많이 사용되는 시스템에 훨씬 더 큰 영향을 줄 수 있습니다 합산


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