GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Qemu / Kvm:Mehrere Kerne / CPUs können nicht an Gäste weitergegeben werden?

Es scheint, dass ich nicht mehrere Kerne / CPUs an KVM-Gäste weitergeben kann. Was auch immer ich mache, die Gäste melden nur eine CPU / einen Kern.

Host-Hardware:Xeon E5620 auf einem Supermicro-Mainboard
Host-Software:Ubuntu 11.04 (Natty) 64-Bit

Ich habe meinen eigenen (neueren) Kernel 2.6.37 für Natty kompiliert (da ich gewisse Probleme mit PCI-Passthrough hatte, wenn ich den Standard-Kernel benutzte). Die anderen Teile der Distribution habe ich nicht verändert; Insbesondere verwende ich das ursprüngliche qemu-kvm-Paket, das enthalten war.

Da virt-manager und die zugehörigen Tools beim Versuch der allerersten grundlegenden Aktion mit unverständlichen Fehlermeldungen scheiterten, starte ich die virtuellen Maschinen von Hand, anstatt irgendwelche Wrapper / Manager zu verwenden. Ich verwende Befehle wie diesen:

/usr/bin/qemu-system-x86_64 -M pc -cpu host -smp cores=2,threads=1,sockets=1 -drive file=/dev/sda6,if=virtio,cache=none,index=0 -drive file=/dev/sdb,if=virtio,cache=none,index=1 -cdrom /dev/cdrom -pidfile ./qemu-garak.pid -boot c -k de -m 4096 -smp 1 -device pci-assign,host=01:05.0 -daemonize -usb -usbdevice "tablet" -name garak -net nic,vlan=0,model=virtio,macaddr=02:01:01:01:01:01 -net tap,vlan=0,ifname=virtnet1,script=/etc/qemu-ifup,downscript=/etc/qemu-ifup -vnc :1

Ich habe auch versucht -cpu host und -smp cores=1,threads=1,sockets=2 (unter anderem).

Ich verwende mehrere Windows-Gäste (Server 2003 R2 (32 Bit), Server 2008 R2 (64 Bit), Windows XP Pro (32 Bit), Windows 7 Pro (64 Bit)) und Linux-Gäste (Ubuntu 11.10 (64 Bit), Debian Squeeze (32 Bit)), aber alle melden nur einen Prozessor / Kern, unabhängig von den -smp-Einstellungen; ansonsten funktioniert die Einrichtung zuverlässig.

Jetzt brauche ich wirklich zusätzliche CPU-Leistung in einem der Gäste, also frage ich mich, was ich falsch mache. Natürlich habe ich über das Ändern der HAL in Windows gelesen und verschiedene Dinge ausprobiert (Uniprozessor-HAL vs. Multiprozessor-HAL), aber ohne Erfolg. Nachdem ich einen ganzen Tag damit verbracht habe, das Problem zu lösen, weiß ich jetzt nicht, was ich noch tun könnte.

Hat jemand eine Ahnung, was schief läuft? Gibt es eine Kernel-Kompilierungsoption (2.6.37), die dafür verantwortlich sein kann, dass nicht mehrere Kerne an die Gäste weitergegeben werden können? Muss die qemu-kvm-Version zur Kernel-Version passen (es gibt keine Warnmeldungen, wenn ich die Gäste wie oben gezeigt starte)?

Vielen Dank,

Binarus

Aktualisierung Nr. 1:

Wie erwartet zeigt auch ein Linux-Gast nicht mehr als eine CPU / einen Kern an:

[email protected]:~# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 44
model name      : Intel(R) Xeon(R) CPU           E5620  @ 2.40GHz
stepping        : 2
cpu MHz         : 2400.400
cache size      : 4096 KB
fpu             : yes
fpu_exception   : yes
cpuid level     : 11
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc up nopl pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 popcnt aes hypervisor lahf_lm
bogomips        : 4800.80
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management:

[email protected]:~#

Diese Ausgabe wurde auf einem Gast erzeugt, der mit -cpu host und -smp 2 gestartet wurde.

Verwandte:Gitkraken wird nicht installiert?

Akzeptierte Antwort:

Na dann, schäme mich:

In der Mitte der obigen Kommandozeile gibt es bereits eine Option „-smp 1“. Daran habe ich mich nicht erinnert, und ich habe es während meiner Tests nicht gesehen. Beim Entfernen funktioniert es wie erwartet.


Ubuntu
  1. Verwalten Sie KVM (QEMU) mit Kimchi (Webinterface)

  2. So installieren Sie KVM unter CentOS 8 Linux

  3. Warum meldet OpenStack den Hypervisor-Typ als QEMU, wenn libvirt_type KVM ist?

  4. Unterschied zwischen Qemu und KVM

  5. Wie viele Kerne kann der Linux-Kernel verarbeiten?

Installieren Sie KVM (QEMU) auf Ubuntu 16.04 / Ubuntu 14.04

So aktivieren Sie den Zugriff auf die Virsh-Konsole für KVM-Gäste

So installieren Sie Qemu/KVM und Virt-Manager GUI auf Ubuntu 20.04 LTS

So installieren Sie QEMU/KVM unter Ubuntu 22.04 | 20.04 LTS

Wie installiere ich QEMU auf Ubuntu 20.04?

Wie kann die angezeigte Bildschirmauflösung auf QEMU / KVM erhöht werden?