Hi All, I am confused by the following observed scenario: In my 4-CPU (KVM supported, 2 core with 2 thread for each) host machine box, I create only one VM with 3-vCPU through virsh/libvirt tools and also I pin this VM process to the physical processor 3. I guess the CPU utilization for the processor 3 will not exceed 100%, then I create 3 process (dead loop-- while(1);) and bind each of them to vCPU[0-2] respectively, through the "top -c" command in VM environment, I can see the CPU utilization for each of the vCPU is about 100%, but interesting, I found that the CPU utilization of processor 3 in the host machine is about 300% with "toc -c" command. why does a single process bound to a CPU can get ~300% cpu bandwidth in this case, does the kernel scheduler dispatch the idle cycle capacity of the CPUs to the virtual CPU of the VM, other word, the scheduler knows the vCPU info in the VM process? For the same case, if I create another 4 new dead-loop processes and bind them to the physical CPU[0-3] equally, then I find the vCPU0/1 in VM will not be 100%, eg. 32%, (I think the scheduler in the guest OS doesn't know it's running in a virtual environment, so the utilization of the vCPU will not change to adapt to the physical processor utilization, but it did, why? -org-gnu -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list