qemu -enable-kvm * ​​langsamer * als reine Emulation für x86_64

752
Ahmed Masud

Laufen qemu-system-x86_64 -enable-kvm -cpu host -smp cores=4gehostet auf einem Intel Xeon / Kern-2 (newgen, Familie = 6) oder eine bessere Maschine (Gesamtzahl der Kerne auf Gast = 24, insgesamt ram = 196gb), und der Gast - Kernel hängt für einige Minuten und der Host - Kernel schiebt Nachrichten mögen:

kvm: SMP-VM, die auf einem Host mit instabilem TSC erstellt wurde; Gast-TSC ist nicht zuverlässig
kvm [..]: vcpu0, Gast-RIP: 0xffffffff81064724 deaktivierte perfctr wrmsr: 0xc2-Daten 0xffff

Das Entfernen -enable-kvm -cpu hostdes Gastsystems wird schneller !?

Was gibt?

1
Welche Kernel-Versionen verwenden Sie auf beiden Seiten? Könnte es mit einem Fehler zusammenhängen, der durch den Patch [x86 / tsc: Fehlerhafte TSC-Rate bei Skylake Xeon behoben] behoben wurde (https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux). git / commit / arch / x86 / kernel / tsc.c? id = b511203093489eb1829cb4de86e8214752205ac6)? Lekensteyn vor 5 Jahren 0

1 Antwort auf die Frage

1
Ahmed Masud

Nun stellt sich heraus, dass es sich bei der Ausgabe um die von kvm auf dem Hostsystem verwendete Taktquelle handelt. Schauen Sie sich die Ausgabe von an:

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

Wenn es sich um den Übeltäter handelt tcsoder tcs_earlySie ihn gefunden haben, ändern Sie ihn in eine der anderen verfügbaren Taktquellen auf Ihrem System:

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

Zum Beispiel hpet (Hochleistungsereignis-Timer):

$ echo hpet | sudo tee /sys/devices/system/clocksource/clocksource0/current_clocksource 
Jede mögliche Erklärung, warum "tcs" im Vergleich zu anderen eine schlechte Taktquelle ist? Gibt es noch andere Nachteile oder Vorteile bei der Änderung der Taktquelle? Mokubai vor 5 Jahren 0
Mögliche Informationen zum Warum von Intel (https://software.intel.com/de-de/blogs/2013/06/20/eliminate-the-dreaded-clocksource-is-unstable-message-switch-to-tsc- for-a-stable), aber ich bin nicht überzeugt, da der Xeon-Phi als problematisch und nicht als invariante tsc-Methode bezeichnet wird. Mokubai vor 5 Jahren 0
Ich habe nicht herausgefunden, warum tcs clock eine schlechte Quelle ist. Ich hatte einfach nicht die Zeit, Kvm-Code zu hacken. Ich werde wahrscheinlich ein paar Tests machen, nachdem das dumme Projekt, das ich habe, fertig ist. Es ist jedoch definitiv der Täter, weil das Problem auf mehreren Hardwares mit mehreren Permutationen leicht reproduziert werden kann Ahmed Masud vor 5 Jahren 0