Сравнительное тестирование производительности Oracle VM VirtualBox в среде Windows 7/10
Однажды я запустил AIDA64 в виртуальной машине, и подумал, а не запустить ли еще одну виртуальную машину внутри виртуальной машины...
реклама
Такое "вложение" ничего хорошего не дало на практике, но у меня установлено 3 операционные системы в ПК, Windows 7, Windows 10 и Xubuntu 22.04.1, так почему бы не проверить как под управлением разных ОС работает VirtualBox?
Прежде чем начинать сравнение, нужно что-то сделать с динамической частотой процессора, ведь в зависимости от характера нагрузки она может быть как на уровне ~4.34 ГГц, так и на уровне ~3.7 ГГц, так не пойдет, ведь мне нужны результаты, а не случайная циферка зависящая от частоты ЦП...
реклама
Отключаю Boost, задаю частоту ядер на уровне 3 ГГц, проверяю работоспособность, именно с такими параметрами и буду проводить тестирование.
Использовать буду VirtualBox версии 7.0.6:
реклама
Еще я сделал резервную копию виртуальной машины, просто чтобы в случае чего можно было взять резервную копию и продолжить тестирование.
-
--
---
Сбор результатов
Здесь я выложу результаты в "сыром" виде, а то вдруг я фанат чего-либо и напишу в сводной таблице "не такие" данные...
Операционная система в виртуальной машине (гостевая) Windows 7 x64 SP1, главная ОС (HOST) будет как Windows 7 x64 SP1, так и Windows 10 x64 21H1 очищенная от Windows Defender, центра обновлений и прочего мусора который отбирает часть вычислительных ресурсов системы, мне нужны стабильные результаты, и для меня неприемлемо когда в фоне "живет" куча мусора влияющего на результаты, потому все лишнее вырезано в Windows 10, за что спасибо сборщику Flibustier.
-
Linux
Увы, но у меня не установился VirtualBox в операционной системе Xubuntu 22.04.1, потому тестов не будет когда в качестве основной ОС (host) выступает Linux.
В чем же проблема? Да без понятия, я просто пытаюсь установить VirtualBox, а центр приложений исчезает в процессе установки, сам VirtualBox при этом не установился:
Конечно же я попытался еще раз установить приложение, но это все бесполезно...
Может быть нужно было подключить доступ к сети интернет, и тогда-то оно насосало бы зависимостей возможно недостающих, но я зарекся подключать Linux дистрибутивы к мобильному интернету, да, широкополосный доступ к интернету есть далеко не везде...
И как всегда "порадовал" интерфейс Xfce, неужели разработчикам этого маразма удобно ловить пиксели, чтобы растянуть изначально маленькое и абсолютно неинформативное при стандартных размерах окошко? Я наверное только с 10 раза смог навести курсор на границу, чтобы растянуть окошко, и так с каждой стороны ибо уголок просто невозможно подцепить для растяжения сразу в обе стороны...
Разработчики интерфейса Xfce, вы что курите? Или может быть нюхаете? Как такой недоработанный интерфейс можно вообще показывать людям? Вам не стыдно за то что пользователям приходится мучиться с таким интерфейсом?
Извините, но я не собираюсь плясать над бубном, чтобы установить VirtualBox ради тестов в среде Linux, я уже и не надеюсь, но может быть разработчики наконец адекватно родят такие базовые вещи как "установка и запуск приложений", и чтобы такой базовый функционал работал как минимум не хуже, чем в Windows XP хотя бы...
И да, обращение всем "умникам" которые возможно захотят меня упрекнуть, мол я не подключил мобильный интернет дистрибутиву Linux и не начал плясать над бубном, чтобы установить VirtualBox... Вы знаете какой дорогой вам идти, не заставляйте меня делать неприличные намёки.
Я скачал автономный установочный пакет приложения ".DEB" подходящий под установленный дистрибутив Linux, понимаете суть? Автономный, установочный пакет ".DEB"... И я не могу этот автономный пакет установить в автономной среде! Почему я не могу его установить как любой другой установочный пакет ".exe" в операционной системе Windows?! Разве эти проблемы забота конечного пользователя?
Почему такой базовый функционал, как установка приложения из автономного установочного пакета не работает попросту в 2023 году при использовании дистрибутивов Linux без доступа к интернету?!
Впрочем, ладно, статья не про Linux дистрибутивы...
-
--
---
Результаты
Конечно, я планировал протестировать работу виртуальной машины не только в среде Windows 7/10, но и в среде Linux (дистрибутив Xubuntu 22.04.1), но так получилось, что не получилось с Linux дистрибутивом, впрочем, ничего нового для меня, посмотрим на результаты в системах которые работают без проблем.
А вот собственно и собранные результаты, первая таблица когда виртуальная машина запущена в Windows 7.
Вторая таблица результатов когда виртуальная машина запущена в Windows 10 21H1.
Уже сейчас можно заметить, что производительность виртуальной машины в среде Windows 10 заметно ниже, чем когда виртуальная машина работала в среде Windows 7, было бы интересно еще посмотреть когда виртуальная машина работает в среде Linux, но увы, не в этот раз...
Конечно же в сравнении нет и не будет тестов по графической составляющей, ведь с поддержкой графических API у VirtualBox довольно скверно обстоят дела:
Сравнение
А теперь рассмотрим подробнее результаты, начнем с CPU Queen, результаты без виртуальных машин примерно идентичны между Windows 7/10.
Другое дело виртуальные машины, производительность в данном тесте значительно снизилась, но машина работающая под управлением Windows 7 имеет более высокую производительность, чем под управлением Windows 10.
Особенно заметен разрыв в пользу Windows 7 при отключении HT в настройках AIDA64, и на этот счет у меня есть догадка, Windows 7 паркует потоки когда они не использованы, тем самым достигает максимальную производительность ядер, а Windows 10 размазывает работу по потокам даже когда это не нужно, от чего ресурсы ядер "размазались" и это негативно сказалось на производительности внутри виртуальной машины когда гостевая ОС не использует потоки.
В данном случае однозначно более высокую производительность имеет виртуальная машина запущенная в среде Windows 7.
А еще Hyper-V слегка отстал в плане производительности от KVM, но один раз и KVM отстал от Hyper-V, вероятно вышла погрешность в минус, но это не точно.
Далее CPU PhotoWorxx, данный тест крайне зависит от скорости работы с ОЗУ и кэшами, он больше отражает не скорость ядер, а скорость работы кэша и памяти в системе.
И снова виртуальная машина запущенная в среде Windows 10 имеет заметно меньшую производительность чем машина запущенная в среде Windows 7.
Но в целом падение производительности небольшое относительно теста запущенного в главной системе, с этой задачей виртуальные машины хорошо справились, учитывая что тест зависит от скорости ОЗУ, то с памятью виртуальные машины работают хорошо.
Еще можно приметить что Hyper-V немного отстал от KVM в плане производительности, но совсем немного.
Переходим к ZLib, и снова производительность виртуальной машины работающей в среде Windows 10 ниже чем в среде Windows 7, причем весьма ощутимо, разница порой достигает десятка процентов в пользу Windows 7.
KVM при этом слегка быстрее чем Hyper-V в целом.
Вот и подошли к шифрованию, тест CPU AES, в очередной раз виртуальная машина в среде Windows 10 показывает заметно худшие результаты, по сравнению с машиной в среде Windows 7, в любом случае до уровня производительности главной ОС очень далеко.
Причем KVM показывает значительно более низкую производительность чем Hyper-V в данной задаче.
Дальше CPU SHA3, раньше в AIDA64 (до версии 5.75) был тест CPU Hash, и в этом тесте Intel ну совсем никак не мог конкурировать с AMD Ryzen, после чего данный тест удалили и заменили тестом CPU SHA3, который уже более лоялен к ЦП от Intel, такой вот небольшой, и некрасивый кусочек истории AIDA64, когда внезапно ставший "неугодным" тест удаляют, и заменяют "правильным"...
Для приличия могли оставить старый тест и просто добавить новый, но разработчики AIDA64 при выходе AMD Ryzen на рынок решили сразу же вырезать "неугодный" тест и заменить "правильным", некрасиво так поступать, очень некрасиво.
Перейдем к CPU SHA3, виртуальная машина в среде Windows 7 показала заметно лучшую производительность по сравнению с машиной работающей в среде Windows 10, ничего нового.
Производительность в виртуальной машине хоть и ниже чем в главной ОС, но не значительно, с этой задачей виртуальная машина справилась отлично.
KVM и Hyper-V показывают неоднозначную разницу между собой, но скорее в пользу KVM.
Переходим к производительности FPU блоков, для справки, FPU это не ядро, это математический сопроцессор, ядра вполне прекрасно могут себя чувствовать и без FPU блоков, и даже можно не заметить отсутствие FPU блоков, например при разгоне AMD Athlon II x3 440, на частотах около 4 ГГц FPU обычно не работают, или работают с ошибками, и это вполне можно не заметить даже загрузив операционную систему, пока не будут запущенны тесты использующие FPU...
Но перейдем к тестам, FPU Julia на этот раз, и сразу же можно приметить что FPU внутри виртуальной машины работают почти так же быстро, как и в главной ОС, по крайней мере если главная ОС это Windows 7, с главной ОС Windows 10 производительность заметно ниже получилась.
И FPU Julia очень не любит когда выставляют "оптимальное" количество ядер в настройках виртуальной машины, в моем случае "оптимально" 8 потоков так как у процессора 16 потоков физически.
В данном случае KVM работает чуть быстрее чем Hyper-V, совсем незначительно.
FPU Mandel работает аналогично как и FPU Julia, машина в среде Windows 7 заметно производительнее чем в среде Windows 10, а уровень производительности не сильно ниже главной ОС, но здесь уже не так остро падает производительность при "оптимальном" количестве ядер в настройках виртуальной машины.
KVM и Hyper-V практически на равных, возможно с небольшим преимуществом в пользу Hyper-V.
Вот и очередное слабое место процессоров Intel, FPU SinJulia, и этот тест очень не любит когда обрезают потоки процессору, тем не менее производительность виртуальных машин близка к главной ОС в данном случае, если конечно главная ОС это Windows 7, ибо виртуальная машина запущенная в среде Windows 10 показывает заметно более низкую производительность.
Виртуальная машина просто отлично справилась с этой задачей и едва ли производительность уступает главной ОС если использовать Windows 7 в качестве главной ОС, с Windows 10 все не очень хорошо вышло.
Что до интерфейса виртуализации, то преимущество скорее за KVM, совсем небольшое.
И последние тесты, FPU FP32 Ray-Tracing, я уже устал повторять, но Windows 10 снова облажалась...
KVM и Hyper-V тоже имеют незначительную разницу между собой, сложно сказать что лучше.
Теперь FPU FP64 Ray-Trace, и здесь можно заметить провал производительности в режиме 8c Hyper-V "HT OFF" при работе в среде Windows 7, и в режиме 16c Hyper-V "HT OFF" тоже провал производительности больше чем у KVM, в Windows 10 все равномерно между KVM и Hyper-V при отключении HT в настройках AIDA64, хотя это не спасает Windows 10, ибо в среде Windows 10 виртуальная машина показывает в целом меньшую производительность чем в среде Windows 7.
Здесь определенно преимущество за KVM, ибо Hyper-V теряет гораздо больше производительности чем KVM при работе в среде Windows 7 если отключать HT.
-
--
---
Заключение
В общем результаты говорят сами за себя, в среде Windows 7 виртуальная машина имеет заметно более высокую производительность, чем если запускать её в среде Windows 10, было бы интересно еще посмотреть каков уровень производительности будет в среде Linux, но увы, я не могу сделать то, что не работает попросту...
Я без понятия когда Linux дистрибутивы будут пригодны для сравнительного тестирования как разные версии Windows, когда разработчики дистрибутивов наконец родят адекватную систему установки и запуска приложений, в том числе без доступа к сети интернет... Но как только разработчики дистрибутивов осилят такие базовые вещи, я с радостью начну проводить тестирование и в среде Linux.
Мне важно чтобы можно было скопировать приложение на USB накопитель, и запустить его на разных ПК без установки и лишних проблем, или в крайнем случае установочный пакет который правильно будет работать на десятке разных ПК без доступа к интернету.
Я сейчас пользователь, и не обязан "осилять" проблемы с установкой автономного .DEB пакета в Linux дистрибутиве, что бы кто не говорил, базовый функционал обязан работать правильно в любых условиях, и точка.
Более чем за 20 лет истории дистрибутивов Linux вполне можно было родить адекватную систему установки и запуска приложений, чтобы не приходилось мучиться пытаясь установить или запустить приложения/игры, Microsoft еще со времен MS DOS смогли адекватно сделать возможности для установки и запуска приложений, что собственно и сделало популярными ОС от Microsoft, пользователи и разработчики могли без проблем распространять софт/игры всевозможными простыми и понятными способами...
Очень надеюсь что однажды и разработчики дистрибутивов Linux осилят подобное, и я смогу подойти к дистрибутивам Linux как обычный пользователь, комфортно установить/запустить любое приложение/игру, без утопления в болоте зависимостей, хоть с USB накопителя, хоть с SSD в другом ПК подключенном через сеть (но без интернета) используя только проводник, прямо как в Windows я делал, запуская игры находящиеся в сети физически на другом ПК, ибо на тестовом ПК было недостаточно места чтобы локально хранить игры.
Главное не постареть к тому моменту, когда Linux дистрибутивы действительно превзойдут Microsoft Windows, и будут пригодны для нормального и полноценного использования простыми пользователями...
На этом пожалуй закончу.
Благодарю за внимание, больше интересных статей в блоге Hard-Workshop.
Лента материалов
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!
Комментарии, содержащие оскорбления, нецензурные выражения (в т.ч. замаскированный мат), экстремистские высказывания, рекламу и спам, удаляются независимо от содержимого, а к их авторам могут применяться меры вплоть до запрета написания комментариев и, в случае написания комментария через социальные сети, жалобы в администрацию данной сети.
Комментарии Правила