web-dev-qa-db-ja.com

qemu -enable-kvmx86_64の純粋なエミュレーションよりも*遅い*

Intel Xeon/Core-2(newgen、Family = 6)以上のマシン(ゲストのコアの総数= 24、RAMの総数= 196GB)でホストされているqemu-system-x86_64 -enable-kvm -cpu Host -smp cores=4を実行すると、ゲストカーネルが数分間ハングし、ホストカーネルは次のようなメッセージをプッシュします。

kvm:不安定なTSCを使用してホスト上に作成されたSMPvm。ゲストTSCは信頼できません
kvm [..]:vcpu0、guest rIP:0xffffffff81064724無効perfctr wrmsr:0xc2データ0xffff

-enable-kvm -cpu Hostを削除すると...ゲストシステムはより速く!?になります

何が得られますか?

1
Ahmed Masud

問題は、ホストシステム上のkvmによって使用されるクロックソースであることがわかりました。次の出力を見てください。

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

tcsまたはtcs_earlyが原因であることがわかった場合は、システムで使用可能な他のクロックソースの1つに変更します。

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

例:hpet(高性能イベントタイマー):

$ echo hpet | Sudo tee /sys/devices/system/clocksource/clocksource0/current_clocksource
1
Ahmed Masud