2xAMD Opteron 6128 com libvirt, CPU física 13 não existe

3

Preciso de ajuda com o problema libvirt (?).

Especificações do servidor:

  • ProLiant DL165 G7
  • 2 processadores AMD Opteron (tm) 6128

Sistema:

  • Teste do Debian GNU / Linux (wheezy)
  • 3.2.0-3-amd64
  • libvirt 0.9.12-5
  • kvm 1: 1.1.2 + dfsg-2

processador $ grep / 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

recursos $ virsh

..
<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.

Pergunta?

Por que meus convidados da VM usam somente as primeiras 8 CPUs e as próximas 8 estão ociosas?

$ para host em virsh list | awk '{print $2}' ; do virsh vcpuinfo $ host; feito | grep ^ CPU: | classificar | uniq

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

Alguma idéia de como mudar isso?

    
por Yakety Yak 06.10.2012 / 23:26

1 resposta

0

Esta é uma solução rápida para este problema:

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

Mas eu decidi mudar o sistema operacional para o Ubuntu e funciona como um encanto.

    
por 12.10.2012 / 11:43