У меня уже некоторое время есть виртуальная машина Ubuntu 32bit на моем 4-процессорном сервере. Я дал ей один процессор, но теперь мне нужно больше мощности. Я добавил второй в настройках Virtualbox, но виртуальная Ubuntu по-прежнему думает, что это только один процессор:
cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
stepping : 11
cpu MHz : 2405.790
cache size : 6144 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc up pni ssse3 lahf_lm
bogomips : 4811.58
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
Есть ли способ сделать так, чтобы моя виртуальная машина Ubuntu знала о наличии второго процессора?
решение1
В документации Virtualbox есть раздел, посвященныйГорячее подключение ЦП. Здесь подробно описана процедура добавления еще одного процессора в гостевые системы Linux.
В гостевых системах Linux применяется следующее: чтобы предотвратить выброс, пока ЦП все еще используется, его необходимо предварительно вывести из гостевой системы. Гостевые дополнения Linux содержат службу, которая получает события горячего удаления и выводит ЦП. Кроме того, после добавления ЦП в виртуальную машину он не используется Linux автоматически. Служба гостевых дополнений Linux позаботится об этом, если она установлена. Если ЦП не запущен, его можно запустить с помощью следующей команды:
echo 1 > /sys/devices/system/cpu/cpu<id>/online
НаИзвестные ограниченияна странице перечислены некоторые недостатки возможностей SMP 32-битных гостевых систем. В основном проблемы с производительностью:
Низкая производительность с 32-разрядными гостевыми системами на некоторых моделях процессоров Intel, которые не включают поддержку аппаратной оптимизации виртуального APIC. Это касается в основном гостевых систем Windows и Solaris, но, возможно, также некоторых версий ядра Linux. Частично решено в версии 3.0.12 для 32-разрядных гостевых систем Windows NT, 2000, XP и 2003. Требуется установить гостевые дополнения версии 3.0.12 или выше.
Это не значит, что многопроцессорная обработка невозможна.