Server + Cal 라이센스 모델을 사용하여 SQL Server Enterprise 2012를 설치 한 후 각각 16 개의 코어가있는 2 개의 프로세서가있는 컴퓨터 (하이퍼 스레딩은 포함되지 않음)에 서버의 부하가 매우 큰 경우 첫 번째 프로세서의 16 개 코어의 활용률이 매우 낮습니다. 두 번째 CPU의 첫 4 개 코어가 많이 사용되었으며 마지막 12 개 코어는 전혀 사용되지 않았습니다 (이 SQL Server 버전의 20 개 코어 제한으로 인해). 총 CPU 사용률은 약 25 %로 표시되었습니다. 불행히도, 작업이 20 개의 코어에 골고루 분산되어 있어도 서버 성능이 크게 저하되었습니다.
Windows Server가 ESX Server의 VMWare 가상 이미지에서 실행 중이지만 모든 CPU가 Windows 서버에 할당되었습니다.
선호도 설정 (예 : 대부분의 코어를 CPU에 할당하고 다른 코어를 I / O에 할당)을 변경하려고 시도했지만 성능 문제를 해결하는 데 도움이되지 않았습니다.
제품 버전을 SQL Server Enterprise Core 2012로 업그레이드하면 SQL Server에서 이전에 사용하지 않은 12 개의 코어를 두 번째 프로세서에서 활용할 수있을뿐만 아니라 모든 프로세서에 훨씬 더 많은 작업을 배포 할 수있었습니다. 요청의 백 로그를 해결하기 위해 cpU 사용률은 약 90 %로 급증한 후 발견되면 약 33 %로 떨어졌지만 새로 업데이트 된 버전으로 장애 조치를 수행 한 후 성능이 크게 향상되었습니다.
12 코어가 유휴 상태 인 두 번째 프로세서의 첫 번째 4 코어에 거의 독점적으로 의존하여 SQL Server 가로 드를 불균등하게 분산시킬 수있는 원인을 아는 사람이 있는지 궁금합니다. 첫 번째 16 코어 각각에 몇 가지 작업 만 할당하십시오. 프로세서. 또한 제품 에디션 업그레이드없이 사용중인 20 개 코어에로드를보다 균등하게 분배 할 수있는 방법이 있습니까?
이 질문의 단점은 SQL Server가 인식 한 모든 코어에로드를 균등하게 분배하기 시작한 제품 업그레이드의 기능입니다.
이러한 질문 및 / 또는 링크에 대한 통찰력 덕분에 무슨 일이 있었는지 이해하는 방법을 더 잘 이해할 수 있습니다.