Difference between qemu-kvm, qemu-system-x86_64, qemu-x86_64

For new features, I recently updated qemu-kvm 1.5.3 to qemu 2.5.0, but I saw several qemu binaries, /usr/local/bin/qemu-x86_64 and /usr/local/bin/qemu-system-x86_64. It seems qemu-system-x86_64 is the emulator program, since libvirt won't recognize qemu-x86_64. Then what's qemu-x86_64 for?

And according to this qemu doc:

qemu-kvm fork for x86 (deprecated, use upstream QEMU now)

It seems qemu is replacing qemu-kvm. But if qemu not qemu-kvm is used, is the guest CPU still provided by KVM? If not so, will the performance be worse?


Solution 1:

I asked the mailing list, here's what I got:

  • qemu-arch like /usr/local/bin/qemu-x86_64 is for running a program of that arch on the host machine of what ever arch, but not a virtual machine
  • qemu-system-arch like /usr/local/bin/qemu-system-x86_64 is for running a system of that arch on the host machine
  • to enable kvm support, qemu parameter -enable-kvm is needed, libvirt should have taken care of this if right xml is configured

Thanks Jakob for the answer in the mailing list.