qemu -enable-kvm * ​​mais lento * que a emulação pura para x86_64


2

Executando qemu-system-x86_64 -enable-kvm -cpu host -smp cores=4hospedado em uma máquina Intel Xeon / Core-2 (nova geração, Família = 6) ou melhor (número total de núcleos em guest = 24, ram total = 196gb), e o kernel convidado trava por alguns minutos e o kernel host envia mensagens gostar:

kvm: SMP vm criado no host com TSC instável; o TSC convidado não será confiável
kvm [..]: vcpu0, guest rIP: 0xffffffff81064724 desativado perfctr wrmsr: 0xc2 dados 0xffff

Removendo -enable-kvm -cpu host... o sistema convidado fica mais rápido !?

O que da?


Quais versões do kernel você está usando em ambos os lados? Poderia estar relacionado a um bug, corrigido pelo patch x86 / tsc: Corrigir taxa de TSC incorreta no Skylake Xeon ?
Lekensteyn

Respostas:


2

Bem, acontece que esse problema é a fonte de relógio usada pelo kvm no sistema host. Dê uma olhada na saída de:

$ cat /sys/devices/system/clocksource/clocksource0/current_clocksource

se é tcsou tcs_earlyvocê encontrou o culpado, altere-o para uma das outras fontes de relógio disponíveis no seu sistema:

$ cat /sys/devices/system/clocksource/clocksource0/available_clocksource

Por exemplo, hpet (timer de eventos de alto desempenho):

$ echo hpet | sudo tee /sys/devices/system/clocksource/clocksource0/current_clocksource

Alguma chance de uma explicação de por que tcsuma fonte de relógio ruim é usada em comparação com outras? Existem outras desvantagens ou benefícios em mudar a fonte do relógio?
Mokubai

Informações possíveis sobre o porquê da Intel ( software.intel.com/en-us/blogs/2013/06/20/… ), mas não estou convencido, pois menciona o Xeon Phi como problemático e não suportando tsc invariável.
Mokubai

11
Eu não entendi por que o tcs clock é uma fonte ruim, mas não tive tempo para hackear o código kvm. Provavelmente vou executar alguns testes depois que o projeto bobo que eu tiver feito for concluído. No entanto, é definitivamente o culpado, porque o problema é facilmente reproduzida em vários hardwares com várias permutações
Ahmed Masud
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.