답변:
VM에 할당 한 "가상"코어는 클라이언트 OS 내에서 다중 처리에 사용할 수 있습니다. 하나의 코어 만 VM에 할당하면 게스트 OS가 여러 코어에로드를 분산시킬 가능성이 없습니다. 실제 시나리오를 가정 해 봅시다 :
이 경우 게스트 OS는 하나의 코어 만 사용할 수 있습니다. 따라서 여러 코어에서 잘 확장되는 멀티 스레드 응용 프로그램을 실행하면 여전히 하나의 코어에서만 실행됩니다. 따라서 게스트 OS의 모든 스레드는 하나의 물리적 코어를 공유해야합니다.
이 설정에서 게스트 OS를 실행하여 CPU를 완전히로드하면 ~ 25 %의 호스트 OS CPU로드가 발생합니다 (호스트에로드 된 4 개의 코어 중 하나).
물론 호스트 OS 내에서 CPU 소비 작업을 계속 실행하고 나머지 3 개의 코어를 사용할 수 있습니다.
이 경우 게스트 VM 내에서 확장 성이 뛰어난 다중 스레드 응용 프로그램을 실행하여 4 개의 가상 CPU를 모두 사용할 수 있습니다. VirtualBox는 4 개의 물리적 코어를 사용하여 VM 내에서 예약 된 작업을 처리하므로 호스트 CPU로드가 최대 100 % 사용량에 도달 할 수 있습니다.
이 질문에 대한 답변은 무엇을하고 싶은지에 달려 있습니다. 경우에 따라 모든 코어를 VM에 할당하거나 심지어 각 CPU에 할당 된 전체 양의 CPU를 가진 여러 VM을 실행하는 것이 유용 할 수 있습니다. 이러한 경우 VM은 호스트의 전체 처리 능력을 완전히 활용할 수 있습니다. 실제로 존재하는 것보다 많은 CPU가 VM에 할당 된 경우 VM은 다른 VM에 대한로드의 영향을받습니다. 이를 방지하기 위해 일부 코어를 특정 VM에 전용 할 수 있습니다. 예를 들어 4 개의 코어 노드에 각각 2 개의 CPU가 할당 된 2 개의 VM을 실행하면 각 VM이 2 개의 전용 CPU를 얻는 데 도움이 될 수 있습니다 (처리 능력의 일부를 담당하는 호스트 OS에 의해 부과되는 부하가 없다고 가정).
다시 이것은 소프트웨어 실행에 달려 있습니다. 유휴 상태 인 VM을 실행하면 (CPU를 많이 사용하는 프로그램이 전혀 실행되지 않음)이 VM이 부과하는로드는 0 %에 가까워집니다. 10 개의 VM을 병렬로 실행할 수 있으며 모든 VM이 유휴 상태 인 경우 호스트 CPU로드가 0 %에 가깝습니다.
CPU로드 분배는 스케줄러라는 OS 특정 내장 구성 요소에 따라 크게 달라집니다. Windows XP의 경우 스케줄러는 모든 CPU 코어를 라운드 로빈로드하려고했습니다. 따라서 쿼드 코어 CPU에서 전체로드로 단일 스레드 작업을 실행하면 각 코어에서 ~ 25 %의로드가 발생합니다.
불행히도 이것은 최신 CPU 전원 관리에 나쁜 것으로 판명되었습니다. 최신 시스템의 경우 두 번째 코어가 참여하기 전에 하나의 단일 코어가 최대 100 %까지로드되는 것이 유리합니다. 그 이유는 하나의 코어를 완전히 사용하기에 충분한 부하가없는 한 다른 코어는 에너지를 절약하고 열 손실을 줄이기 위해 수면 모드로 유지 될 수 있기 때문입니다.
Intel Core i-Series 및 최신 AMD (Bulldozer)와 같은 일부 CPU의 경우 코어의 서브 세트 만 사용하는 경우 사용되지 않는 코어가 꺼 지므로 더욱 흥미 롭습니다. 이것은 CPU의 전력 소비를 줄입니다. (인텔과 AMD) 모두 열 및 전력 소비 예산을 사용하기 시작한 후 활성 코어를 오버 클로킹합니다. 따라서 단일 스레드 응용 프로그램 (작업을 동시에 수행하기 위해 여러 코어에 배포 할 수 없음)이 향상 될 수 있습니다. 그러나 모든 코어가 활성화되면 "부스트"기술의 대부분은 "모든 코어 활성화"상황이 CPU가 설계된 상황이기 때문에 처리 능력에 거의 영향을 미치지 않습니다.
따라서 코어 i7은 단일 코어의 불균일 한로드를 매우 잘 처리하고 단일 스레드 응용 프로그램의 성능을 향상시킬 수도 있습니다. 그러나이 부스트는 몇 퍼센트 범위 내에 있지만 실제로 여러 CPU 코어에로드를 분배 할 수있는 멀티 스레드 응용 프로그램은 최적의 경우 요인 (듀얼 코어의 x2, 쿼드 코어의 4x ...)에 의해 향상 될 수 있습니다. . 따라서 멀티 스레딩은 클록 강화와 결합 된 단일 스레딩보다 CPU 성능을 결합하여 항상 더 많은 전력을 제공합니다.