1

I run SUSE Linux Enterprise Server 11 SP1 in a virtual machine. The hypervisor is KVM. There is 4 virtual CPU cores for the VM. Now there is a very strange thing. In theory the maximum CPU usage should be 400% (because of 4 cores) in top command, but now it's 697%! Can somebody explain this? Is it related to virtual machine?

top - 17:52:33 up 2 days, 23:25,  5 users,  load average: 0.00, 0.00, 1.04
Tasks: 180 total,   1 running, 174 sleeping,   5 stopped,   0 zombie
Cpu0  : 99.4%us,  0.1%sy,  0.0%ni,  0.6%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu1  :  3.9%us, 11.6%sy,  0.0%ni, 83.5%id,  1.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  3.8%us, 12.7%sy,  5.3%ni, 78.2%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.0%us,  0.1%sy,  0.0%ni, 99.9%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   3926008k total,  1138064k used,  2787944k free,   159120k buffers
Swap:  2104472k total,     5876k used,  2098596k free,   424540k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                               
 5129 sa        20   0  120m  12m 3680 S  697  0.3  5124160h warpypxq                                                               
 5250 sadl      20   0 1119m  42m 6200 S    0  1.1  74:40.44 java                                                                  
    1 root      20   0 10376  724  688 S    0  0.0   0:02.72 init                                                                   
    2 root      20   0     0    0    0 S    0  0.0   0:00.00 kthreadd                                                              
    3 root      RT   0     0    0    0 S    0  0.0   0:00.67 migration/0                                                            
    4 root      20   0     0    0    0 S    0  0.0   0:12.29 ksoftirqd/0                                                           
    5 root      RT   0     0    0    0 S    0  0.0   0:00.59 migration/1
Sgaduuw
  • 1,833
  • 12
  • 16
flypen
  • 205
  • 1
  • 3
  • 7
  • 1
    Find out what `warpypxq` is. – quanta Aug 04 '11 at 14:10
  • In my understanding, the CPU usage is collected by system. No matter what the process is, the CPU usage can't be higher than the maximum value. – flypen Aug 05 '11 at 03:36
  • If the clock of VM slower or faster, will the CPU usage value be not correct? – flypen Aug 07 '11 at 05:45
  • There are many timing issues involved when you have full virtualization and your CPU-cores can clock down/up independently. BTW: What does that **warpypxq** do? – Nils Jan 01 '12 at 21:48

1 Answers1

-2

10:1 odds this machine has hyperthreading, so each core can have two threads running in parallel. Therefore the maximum CPU utilization would actually be 800%.

Jeff McJunkin
  • 1,372
  • 1
  • 8
  • 16