now question is if one of the cpu vmexits the guest due to trapping instruction ( i.e. PIO), the host linux will have only one physical cpu to run on as the other cpus are still running the guest os ? Am I right ?
Thanks Xin 2011/11/8 Xin Tong <xerox.time.t...@gmail.com>: > so qemu exposes multiple processors to the guest os by having multiple > vCPUs. and it realizes the multiple vCPUs by either using RR on a > single host cpu (qemu ) or using multiple host cpus (kvm). > > Thanks > > Xin > > > 2011/11/8 Stefan Hajnoczi <stefa...@gmail.com>: >> On Tue, Nov 8, 2011 at 12:10 PM, 陳韋任 <che...@iis.sinica.edu.tw> wrote: >>> On Tue, Nov 08, 2011 at 08:04:44PM +0800, 陳韋任 wrote: >>>> > I am wondering that when one uses qemu with kvm. How many cores are >>>> > exposed and available to the guest os ( assuming the host has 4 cores >>>> > ). is this configurable ? >>>> >>>> QEMU provides "-smp" option, but those virtual cpus are scheduled in >>>> round-robin fashion. In other words, it's not real parallelism. I don't >>>> know if there is any difference with kvm enabled. >>> >>> IIRC, kvm uses QEMU for device emulation only. Those virtual cpus are >>> ran on physical cpus simultaneously. >> >> Right, qemu -enable-kvm will run a thread for each vCPU. So you get >> true SMP parallelism. >> >> QEMU without KVM mode, on the other hand, does round-robin scheduling >> of vCPUs and does not take advantage of multiprocessor hosts. >> >> Stefan >> >