단일 Windows VM(KVM)에 모든 호스트 리소스 사용 - 성능을 향상시키는 방법

단일 Windows VM(KVM)에 모든 호스트 리소스 사용 - 성능을 향상시키는 방법

우리는 Ubuntu 12.04에서 KVM/qemu를 사용하여 많은 호스트 리소스(모든 CPU 코어, 4GB RAM)를 사용하는 Windows 2008 R2 VM을 생성하고 있습니다. Windows 부팅 중에 Windows가 할당된 모든 메모리를 할당하는 것으로 보이며 이로 인해 실제로 호스트 리소스가 충돌하고 때때로 KVM이 세그폴트를 발생시키는 것 같습니다.

virtio 드라이버 등을 사용하는 것 외에 이러한 유형의 배포에 대해 제안된 설정이나 옵션이 있습니까(하이퍼바이저 설정 또는 호스트 커널 조정에 따라 더 생각해 보세요).

답변1

12.10으로 업그레이드하면 이 문제가 완전히 해결되었으므로 이는 Ubuntu 12.04 LTS가 사용하는 커널 또는 QEMU 버전의 일부 조합으로 밝혀졌습니다. 'perf top'을 사용하여 부팅하는 동안 KVM 프로세스를 디버깅하는 동안 이 문제를 발견했습니다. __ticket_spin_lockKVM 아카이브를 검색한 후 가능한 커널 스케줄링에 대한 의견과 스케줄링 문제 개선을 언급하는 최신 QMEU 패치에 대한 의견이 많이 나타났습니다. .

다음 버전은 12.10에서 사용되는 버전입니다.

QEMU emulator version 1.2.0 (qemu-kvm-1.2.0+noroms-0ubuntu2.12.10.6, Debian) Kernel 3.5.0-46-generic

나는 이것을 Ubuntu의 최소 버전으로 확실히 권장합니다. 성능 향상이 뛰어났습니다. 우리는 일반적으로 이 상황에서 LTS를 선호하지만 업그레이드가 더 쉬웠고 어쨌든 14.04 LTS가 곧 출시될 것입니다.

관련 정보