Как включить несколько ядер в моей виртуальной среде?

Я установил Ubuntu в виртуальной среде, используя Oracle VM VirtualBox Manager, и он отлично работает.

Однако я бы хотел включить несколько ядер - как видно на рисунке ниже, у моего компьютера с Windows есть 2 ядра:

enter image description here

Теперь, когда я запустить lscpu в Ubuntu, я получаю следующую информацию, показывающую, что используется только 1 ядро:

enter image description here

Я попытался изменить настройки виртуальной коробки включить несколько процессоров, но это не позволит мне сделать это, как показано на изображении ниже:

Image

Как включить несколько ядер (процессоров) в моем виртуальная среда?

20
задан 24 July 2016 в 11:42

3 ответа

Для включения больше чем 1 ЦП в VM, следующие настройки необходимы, кроме того:

  • 64-разрядные виртуальные гостевые аппаратные средства на вкладке настроек General (для 64-разрядных гостей)

    enter image description here

  • включите вводу-выводу APIC на вкладке настроек Motherboard

    enter image description here

  • включите аппаратную виртуализацию (VT-x/AMD-V) на вкладке Acceleration

    enter image description here

Обратите внимание на это, если Ваше выполнение Ваш VM на всех ядрах, доступных, можно испытать лучшую производительность хоста при присвоении ограничения выполнения ЦП.

Если Вы не активировали опцию CPU замены в горячем режиме изменения virtualbox количества ядер, может только быть сделан на машине, которая была закрыта.

Повышение производительности гостя только, чтобы ожидаться для программного обеспечения, которое использует несколько ядер. Только затем предоставление всех ядер с ограничением выполнения имеет смысл.

17
ответ дан 24 July 2016 в 11:42

Если ваша виртуальная машина в данный момент работает (или «сохранена»), вы не можете изменить это значение. Сначала отключите вашу виртуальную машину.

0
ответ дан 24 July 2016 в 11:42

Я работал над многопоточной программой, которая выполнялась в последовательном порядке на виртуальной машине. У меня была такая же проблема, как и у вас. Я исправил это следующим образом:

  1. Остановить виртуальную машину или выйти.
  2. Запустите VMWare -> Выбрать машину -> Нажмите «Система» -> «Выбрать процессор» -> «Изменить номер процессора».
  3. Запустите виртуальную машину.

Ранее std :: thread :: hardware_concurrency () из стандартного потока возвращал 1, но после изменений возвращает количество процессоров в настройках виртуальной машины.

Теперь я смог успешно запускать свои многопоточные программы на ВМ.

0
ответ дан 24 July 2016 в 11:42

Другие вопросы по тегам:

Похожие вопросы: