6

У меня Intel Core i7 3930K с 6 ядрами процессора. Теперь я понимаю, что каждое из этих ядер может обрабатывать 2 отдельных потока. Это составляет 12 виртуальных ядер, которые я вижу, используя мой системный монитор (см. Скриншот ниже).

Но когда я создаю виртуальную машину с помощью программного обеспечения VirtualBox от Oracle, я неожиданно могу выделить 24 ЦП для этой машины. Как так?

Так что это значит? На самом деле 24 ядра - или VirtualBox не так?

И что произойдет, если я выделю, например, 4 ядра - сколько реально добавлено к виртуальной машине?

4 ответа4

11

Одно ядро, с гиперпоточностью или без нее, может имитировать любое количество виртуальных ядер просто путем временного среза. Однако это создает всевозможные проблемы, поскольку операционные системы ожидают, что код, выполняющийся в одно и то же время, будет фактически чередоваться. Избыточное выделение ресурсов может привести к падению производительности настолько, что система может казаться замороженной, а операции буквально в тысячи раз дольше, чем нужно.

1

Если вы выделите 4 ядра, вы получите 4 ядра в виртуальной машине. Однако почти все время вам лучше просто выделить 1, потому что вы добавляете много накладных расходов каждый раз, когда добавляете другое ядро.

В вашем случае вы можете иметь максимум 5 ядер, если вы перейдете в красную область, ваша виртуальная машина станет нестабильной.

Виртуальный ящик рекомендует максимальное количество ядер, которое вы используете, должно быть n-1 от ваших физических ядер. Hyper-Threading не считается.

Эта тема на виртуальных форумах поддерживает это.

0

Процессор i7 3930K имеет VT-x.

Технология виртуализации Intel® (VT-x) позволяет одной аппаратной платформе функционировать как несколько «виртуальных» платформ. Он предлагает улучшенную управляемость за счет ограничения времени простоя и поддержания производительности за счет разделения вычислительной деятельности на отдельные разделы.

Это означает, что вы можете моделировать несколько больше процессоров, чем потоков, которые он может обрабатывать, таким образом, при использовании виртуальной машины вы увидите большее количество процессоров.

0

В моем случае использование 6 из 8 наших CPU в 4-ядерном 8-поточном процессоре было быстрее в тестировании, чем 4 из 8, несмотря на то, что Virtual Box предполагает, что я могу получить ухудшение. Поэтому я думаю, что Virtual Box предотвращает попадание себя в ногу, если вы новичок, и будет жаловаться на медлительность, в то время как как супер пользователь вы можете пропустить это предупреждение.

Длинный ответ:

У меня Intel-Core-i7-2820QM с 4 ядрами и 8 потоками. У меня есть Virtual Box 5.2.6 с хостом и гостем Windows 10.

Установка 6 CPU 8 из 8 в настройках Virtual Box Guest дает следующие значения в userbenchmark:

Multi core

MC Int 307
MC Float 326
MC Mixed 315
47% 316 Pts


Quad core

QC Int 270
QC Float 272
QC Mixed 268
61% 270 Pts

CPU-Z:

Установка 4 CPU :

Userbenchmark

Multi core

MC Int 260
MC Float 269
MC Mixed 269
40% 266 Pts

Quad core

QC Int 260
QC Float 264
QC Mixed 262
59% 262 Pts

CPU-Z:

1108 4,21 6

Заметки:

Никакого теплового дросселирования (которое происходит, когда 100 градусов Цельсия) не произошло во время тестовых прогонов:

997 3,37 4

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .