具有libvirt的2xAMD Opteron 6128,物理CPU 13不存在

我需要帮助libvirt(?)的问题。

服务器规格:

  • ProLiant DL165 G7
  • 2个AMD Opteron(TM)处理器6128

系统:

  • Debian GNU / Linuxtesting(wheezy)
  • 3.2.0-3-AMD64
  • libvirt 0.9.12-5
  • kvm 1:1.1.2 + dfsg-2

$ grep processor / proc / cpuinfo | wc -l

16 

$ virsh nodeinfo

 setlocale: No such file or directory CPU model: x86_64 CPU(s): 16 CPU frequency: 800 MHz CPU socket(s): 2 Core(s) per socket: 4 Thread(s) per core: 1 NUMA cell(s): 1 Memory size: 66114200 KiB 

$ virshfunction

 .. <topology> <cells num='4'> <cell id='0'> <cpus num='4'> <cpu id='0'/> <cpu id='1'/> <cpu id='2'/> <cpu id='3'/> </cpus> </cell> <cell id='1'> <cpus num='4'> <cpu id='4'/> <cpu id='5'/> <cpu id='6'/> <cpu id='7'/> </cpus> </cell> <cell id='2'> <cpus num='4'> <cpu id='12'/> <cpu id='13'/> <cpu id='14'/> <cpu id='15'/> </cpus> </cell> <cell id='3'> <cpus num='4'> <cpu id='8'/> <cpu id='9'/> <cpu id='10'/> <cpu id='11'/> </cpus> </cell> </cells> </topology> .. 

$ virsh vcpupin vm 0 13,12,11,10,9,8,7,6,5

 error: Physical CPU 13 doesn't exist. error: cpulist: Invalid format. 

题?

为什么我的VM guest虚拟机只使用前8个CPU,接下来的8个空闲?

$在virsh list | awk '{print $2}'主机 virsh list | awk '{print $2}' ; 做virsh vcpuinfo $主机; 完成| grep ^ CPU:| sorting| uniq的

 CPU: 0 CPU: 1 CPU: 2 CPU: 3 CPU: 4 CPU: 5 CPU: 6 CPU: 7 

任何想法如何改变?

这是这个问题的快速解决方法:

 for pid in `ps aux | grep '/usr/bin/kvm' | grep -v grep | awk '{print $2}'`; do taskset -p -c 0-15 $pid; done 

但是我决定把操作系统改成Ubuntu,它就像一个魅力。