Четырехъядерный хост с Hyper-threading, сколько процессоров настроить в VirtualBox?

У меня есть четырехъядерный процессор i7 с hyperthreading (8 логических ядер), когда я настроил виртуальную машину на использование 8 процессоров, VirtualBox дал мне предупреждение о том, что у меня есть только четыре ядра (что правда), и что это может вызвать проблемы с производительностью. Но Hyper-threading-это аппаратная функция, поэтому ОС видит 8 ядер и отправляет инструкции всем 8. Что делать, если при установке значения 4 виртуальная машина будет использовать 2 ядра (4 потока) вместо 4 одновременных потоков (на всех 4 ядрах)? Делает предупреждение У меня учесть что моя машина имеет многопоточности?

16
задан Anthony
17.01.2023 9:10 Количество просмотров материала 3087
Распечатать страницу

4 ответа

на основе бенчмарка сделано Кристиан Wedberg Я бы сказал, Вы должны использовать все логические ядра у вас.

Также я сделал свой собственный тест, используя тот же процессор (i7, 4 CPU с HT), который подтвердил повышение производительности для многопоточных приложений. Если гостевой ПК (Win. 8.1 x64) использовали все 8 ядер, затем host PC (Ubuntu x64) также использовал все 8 ядер.

enter image description here

я сравнивал производительность в однопоточных приложениях. В в обоих случаях я измерил одни и те же значения, поэтому нет штрафа, используя больше, чем физическое (но до логического) количество процессоров.

Здесь вы видите, что 1 CPU полная загрузка в гостевом ПК приведет к 1 загрузке CPU в хост-компьютере.

enter image description here

8
отвечен icl7126 2023-01-18 16:58

Я обнаружил, что, хотя это возможно (и, возможно, быстрее) в VirtualBox (мой опыт был с версией 5.1.0), чтобы выделить vCPUs для виртуальной машины на основе логических процессоров, можно столкнуться с проблемами внутри гостевой ОС при работе при высокой нагрузке. В моем случае виртуальная машина Windows 2012 R2 с 12 vcpu на 8-ядерном хосте Ubuntu 16.04 (который сообщает о 16 логических процессорах) будет BSOD во время высокой нагрузки на процессор с сообщением об ошибке DPC_WATCHDOG_VIOLATION. Анализ минидампа с использованием osronline.com показанный e1g6032e.sys (Intel 100/1000 сетевой драйвер родной для Windows), чтобы быть причиной нарушения.

Это заставляет меня полагать, что синхронизация в гостевой ОС негативно влияет при выделении vcpu на основе емкости логического процессора и запуске виртуальной машины при высокой нагрузке в течение длительных периодов времени. В моем случае 100% загрузка процессора внутри виртуальной машины Windows в течение нескольких минут приведет к BSOD. После уменьшения количества vCPU до 8 (что соответствует количество физических ядер хоста), виртуальная машина Windows больше не BSOD при аналогичных ситуациях высокой нагрузки. The документации из VirtualBox говорит, что это нужно сделать, но не предлагает никаких причин.

в моей среде также были запущены две другие виртуальные машины Ubuntu, каждая с 8 собственными vcpu. Однако нагрузка на них была минимальной во время проблем BSOD виртуальной машины Windows.

7
отвечен Albert Gazendam 2023-01-18 19:15

учитывает ли предупреждение, которое я получил, что моя машина имеет гиперпоточность?

да. Если задать число ядер в виртуальной машине больше, чем физически, процесс планирования задач в Virtual Box over фиксирует ресурсы ЦП, что приводит к основным проблемам производительности.

Что касается распределения нагрузки между ядрами, то это работа ОС хоста, и должна вести себя в правильном поместье.

2
отвечен user195560 2023-01-18 21:32

была ли эта виртуальная машина оригинальной для вашей машины? Иногда при клонировании виртуальной машины и перемещении ее на другой компьютер и / или изменении параметров возникают особые ошибки.

Я рекомендую скачать и установить последнюю версию Virtual Box с последними расширениями.

Я совершил все восемь ядер, и я не получаю эту ошибку с моим i7 работает виртуальная машина с Ubuntu 13.10.

0
отвечен ClaireW 2023-01-18 23:49

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх