vCPU 토폴로지(소켓/코어/스레드)는 VM의 컴퓨팅 성능에 어떤 영향을 미치나요?

vCPU 토폴로지(소켓/코어/스레드)는 VM의 컴퓨팅 성능에 어떤 영향을 미치나요?

AMD Matisse 프로세서(12C 24T)를 사용하는 Ubuntu 호스트가 있습니다. libvirt(QEMU+KVM)를 사용하여 가상 머신을 시작할 때 CPU 토폴로지를 설정하는 옵션이 있습니다.

거의 모든 소비자 PC에는 다중 코어와 코어당 최대 2개의 스레드(HT)를 갖춘 단일 소켓 CPU가 있으므로 VM에 대해 유사한 토폴로지를 설정하고 싶은 유혹이 듭니다. 이 설정만으로도(총 CPU 스레드가 일정하게 유지된다고 가정) VM 성능이나 호스트 CPU 사용률(예: 예약과 관련)에 영향을 미치는지 궁금합니다.

답변1

NUMA 멀티소켓 시스템에는 각 CPU에 별도의 캐시가 있고 RAM 액세스 시간은 액세스된 RAM이 연결된 위치에 따라 다르기 때문에 게스트 OS의 스케줄러에 영향을 미칠 가능성이 높습니다. 적절한 OS라면 이를 처리할 것입니다(또는 소비자 창처럼 작동을 중단할 수도 있습니다).

보고된 구성이 실제 할당된 하드웨어와 다를 이유가 없습니다. 게스트 OS가 일부 이국적인 시스템에서 실행되고 있다고 생각하도록 속여서 테스트하는 것 외에는 말이죠. 성능 측면에서는 영향이 없거나 부정적인 영향을 미쳐야 합니다.

관련 정보