Por que as janelas ociosas da VM estão usando muita CPU?

11

Eu tenho 2 VMs em execução como convidados em uma plataforma de virtualização KVM em execução no Ubuntu 10.04. Uma VM é um sistema Ubuntu 10.04, a outra é um sistema Windows 7. Quando ambas as máquinas estão completamente desconectadas, a máquina Linux usa 1% da CPU, a do Windows 45-50%, de acordo com o topo. Os gráficos no virt-manager parecem confirmar isso. Não há nada instalado na imagem do Win7 que estaria sendo executado em segundo plano; é tão fresco quanto possível.

Por que a VM do Windows está usando muito mais do que a VM do Linux, quando ambas estão desconectadas e ociosas?

Editar:

Instalei o convidado com armazenamento paravirt e drivers de rede desde o início. Eu não acredito que existam outros drivers que estão faltando, estou errado?

De acordo com o gerenciador de tarefas do convidado, é realmente ocioso. O Taskman ocupa cerca de 1 ou 2% da CPU guest, mas não há outros processos ocupando o tempo da CPU.

    
por Jeff Shattock 31.05.2010 / 22:07

5 respostas

4

Qual versão do QEMU-KVM você está executando?

Nós vimos esse problema nas versões 0.12.3 e abaixo, mas isso não parece ser um problema muito grande no 0.12.4. Além disso, verifique se os protetores de tela estão sendo executados. Se você estiver usando a conexão VNC, ela poderá estar em execução e a utilização da CPU não estará dentro da VM - ela será usada pelo processo KVM.

    
por 01.06.2010 / 01:10
6

Eu sei que minha resposta vem depois de 100 anos, mas: para referência futura por favor veja aqui:

link

Se esse é o caso, aqui está a solução: link

Deixou cair a minha utilização de CPU do convidado Win2K3 R2 (quando o convidado estava inactivo) no meu anfitrião x86_64 kvm de ~ 30% -40% a 6%

    
por 07.06.2011 / 23:25
1

O fato de o Windows ser instalado recentemente não significa que ele não execute processos ou serviços em segundo plano. Monitore a máquina do Windows com o SNMP ou o gerenciador de tarefas e tente descobrir se está de fato ocioso. Como Massimo disse que você também deve instalar drivers de pravirtualização para o seu sistema operacional convidado. Eu nunca vi uma VM inativa pegar os recursos da CPU do host.

    
por 31.05.2010 / 23:15
0

Eu não sei nada sobre o KVM, mas no VMware isso pode acontecer se você não instalar as ferramentas do VMware na máquina virtual, para que ele não tenha drivers de dispositivo adequados para o hardware virtualizado e seja incapaz de colocar sua CPU virtual em estado ocioso quando ela não está realmente fazendo nada, usando um simples loop ocioso (o que na verdade corresponde à CPU sendo totalmente ocupada em loop).

Talvez haja algo semelhante às ferramentas do VMware que você deve instalar na sua VM?

    
por 31.05.2010 / 22:15
-3

Primeiro, pare de comparar o Windows e o Linux ou espere que eles se comportem da mesma forma. Eles são diferentes.

O Windows está nunca ocioso. Ele executa muitas tarefas em segundo plano e, da minha breve experiência com o Win 7, ele faz mais do que o XP. Uma coisa que ajudará a aliviar a carga é começar a encerrar os serviços necessários, como o serviço de indexação.

    
por 01.06.2010 / 06:09