Как разработчик ОС, я полностью согласен с результатами измерений. Количество ерунды, произведенной в другом месте о предмете, невероятно.
Посмотрите количество логических ядер как число параллельных потоков / процессов, которые могут быть выполнены HW. Это достигается путем дублирования, например, регистров и указателей команд ядра ЦП. Теперь само ядро процессора решает, какой поток (указатель инструкции) использовать. Он решит использовать другой поток, поскольку инструкция текущего потока недоступна в кеше и должна быть выбрана, например, из памяти или кеша L3. Этот механизм создаст 10% -30% потенциальное улучшение команд / секунд или производительности процессора.
Если вы запустите одно приложение с одним потоком, вы не сможете воспользоваться этим преимуществом, но если вы запустите два приложения с высокой нагрузкой, например, на старом HT Pentium, вы сможете воспользоваться преимуществами. То же самое верно, конечно, для приложений, которые имеют более одного потока. Моя система Linux имеет 200 потоков, поэтому всегда присутствуют некоторые преимущества, зависящие от фактической нагрузки. Все эти замечания применимы без виртуализации.
Virtualbox ограничивает только количество потоков, которые могут работать параллельно для каждой виртуальной машины (ВМ), но планировщик хост-процессов изменит логический процессор (-ы) и, следовательно, физический процессор (-ы), на которых процессы ВМ работают динамически. Если вы запускаете приложения с высокой нагрузкой на ВМ, дополнительные логические ядра дадут вам то же преимущество в 10% -30%. Загрузка может представлять собой одно многопоточное приложение или набор различных приложений.
В современных системах с VT-x или AMD-V нет снижения производительности при увеличении количества логических ядер, поскольку также не наблюдается заметного снижения производительности при одновременном запуске большего количества виртуальных машин. Ваш предел - это производительность вашего процессора, поэтому вы не можете воспроизводить видео на 3 виртуальных машинах одновременно, не замедляя каждую виртуальную машину, потому что они должны использовать один и тот же физический процессор.
Ваша хост-система может перестать отвечать на запросы, если вы рендерите видео на ВМ со всеми присутствующими логическими ядрами, но у вас будет почти такая же проблема, если вы запустите это приложение рендеринга на вашем хосте. По крайней мере, в VM у вас есть выбор, и вы можете решить его, ограничив максимальную загрузку ЦП до 80% -90% или уменьшив количество ядер по этой причине.