Тест производительности виртуализации: введение
Среда виртуализации была горячим товаром для пользователя Mac с тех пор, как Apple начала использовать процессоры Intel на своих компьютерах. Еще до того, как Intel появилась, было доступно программное обеспечение эмуляции, которое позволяло пользователям Mac запускать Windows и Linux.
Но эмуляция была медленной, используя слой абстракции для перевода кода программирования x86 в код, используемый архитектурой PowerPC предыдущих Mac. Этот уровень абстракции не только должен был переводить для типа ЦП, но также и всех компонентов оборудования. По сути, слой абстракции должен был создавать программные эквиваленты видеокарт, жестких дисков, последовательных портов и т. Д. Результатом была среда эмуляции, которая могла запускать Windows или Linux, но была строго ограничена как производительностью, так и операционными системами, которые могли бы быть используемый.
С появлением Apple решения использовать процессоры Intel, вся потребность в эмуляции была сметена. На его месте появилась возможность запускать другие ОС непосредственно на Intel Mac. На самом деле, если вы хотите запускать Windows непосредственно на Mac в качестве опции при загрузке, вы можете использовать Boot Camp, приложение, которое Apple предоставляет в качестве удобного способа установки Windows в среде с несколькими загрузками.
Но многим пользователям нужен способ одновременного запуска Mac OS и второй ОС. Parallels, а позднее VMWare и Sun, предоставили эту возможность Mac с технологией виртуализации. Виртуализация похожа на концепцию эмуляции, но поскольку компьютеры Mac на базе Intel используют те же аппаратные средства, что и стандартные ПК, нет необходимости создавать уровень абстракции оборудования в программном обеспечении. Вместо этого программное обеспечение Windows или Linux может работать непосредственно на аппаратном обеспечении, создавая скорости, которые могут быть почти такими же быстрыми, как если бы гостевая ОС запускалась изначально на ПК.
И на этот вопрос наши тесты тестов будут отвечать. Разве три основных игрока в виртуализации на Mac - Parallels Desktop для Mac, VMWare Fusion и Sun VirtualBox - соответствуют обещаниям близкой к производительности?
Мы говорим: «Нарожденный», потому что все среды виртуализации имеют некоторые накладные расходы, которых можно избежать. Поскольку виртуальная среда работает одновременно с родной ОС (OS X), необходимо совместное использование аппаратных ресурсов. Кроме того, OS X должна предоставлять некоторые услуги для среды виртуализации, такие как окна и основные сервисы. Комбинация этих служб и совместного использования ресурсов имеет тенденцию ограничивать, насколько хорошо может работать виртуализованная ОС.
Чтобы ответить на вопрос, мы собираемся провести тестовые тесты, чтобы увидеть, насколько хорошо работают три основные среды виртуализации, работающие под управлением Windows.
02 из 07Тест производительности виртуализации: метод тестирования
Мы собираемся использовать два разных, популярных, кросс-платформенных тестовых набора тестов. Первый, CineBench 10, выполняет реальный тест процессора компьютера и способность его графической карты делать изображения. Первый тест использует CPU для рендеринга фотореалистичного изображения, используя вычисления с интенсивным использованием процессора для отображения отражений, затенения окружающего пространства, освещения области и затенения и т. Д. Тест выполняется с одним процессором или ядром, а затем повторяется с использованием всех доступных процессоров и ядер. В результате получается эталонный уровень производительности для компьютера с использованием одного процессора, класс для всех процессоров и ядер и указание того, насколько хорошо используются несколько ядер или процессоров.
Второй тест CineBench оценивает производительность графической карты компьютера с помощью OpenGL для рендеринга 3D-сцены, когда камера перемещается внутри сцены. Этот тест определяет, насколько быстро может работать видеокарта, сохраняя при этом точную визуализацию сцены.
Второй набор тестов - GeekBench 2.1.4, который проверяет целостность процессора и производительность с плавающей запятой, анализирует память с помощью простого теста производительности чтения / записи и выполняет тест потоков, который измеряет постоянную пропускную способность памяти. Результаты набора тестов объединяются для создания единого показателя GeekBench. Мы также выработаем четыре базовых набора тестов (Integer Performance, Floating Point Performance, Memory Performance и Stream Performance), чтобы мы могли видеть сильные и слабые стороны каждой виртуальной среды.
GeekBench использует эталонную систему на базе PowerMac G5 @ 1,6 ГГц. Оценки GeekBench для эталонных систем нормированы на 1000. Любой показатель выше 1000 указывает на компьютер, который работает лучше, чем эталонная система.
Поскольку результаты обоих эталонных наборов несколько абстрактны, мы начнем с определения системы ссылок. В этом случае эталонная система будет хостом Mac, который используется для запуска трех виртуальных сред (Parallels Desktop для Mac, VMWare Fusion и Sun Virtual Box). Мы будем использовать оба эталонных набора в справочной системе и использовать эту цифру для сравнения того, насколько хорошо работают виртуальные среды.
Все испытания будут выполняться после нового запуска как основной системы, так и виртуальной среды. На хосте и в виртуальных средах будут отключены все антивирусные и антивирусные приложения. Все виртуальные среды будут запускаться в стандартном окне OS X, так как это наиболее распространенный метод, используемый во всех трех средах. В случае виртуальных сред никакие пользовательские приложения не будут работать, кроме контрольных показателей.В хост-системе, за исключением виртуальной среды, никакие пользовательские приложения не будут работать, кроме текстового редактора, чтобы делать заметки до и после тестирования, но никогда в процессе фактического тестирования.
03 из 07Тест производительности виртуализации: результаты тестов для хост-системы Mac Pro
Система, которая будет размещать три виртуальные среды (Parallels Desktop для Mac, VMWare Fusion и Sun VirtualBox), является выпуском Mac Pro от 2006 года:
Mac Pro (2006)
Два двухъядерных процессора 5160 Zeon (всего 4 ядра) @ 3,00 ГГц
4 Мбайт на ядро L2 кэш-памяти (всего 16 МБ)
6 ГБ оперативной памяти, состоящей из четырех модулей 1 ГБ и четырех модулей объемом 512 МБ. Все модули соответствуют парам.
Передняя шина с частотой 1,33 ГГц
Видеокарта NVIDIA GeForce 7300 GT
Два жестких диска Samsung F1 Series объемом 500 ГБ. OS X и программное обеспечение для виртуализации находятся на загрузочном диске; гостевые ОС хранятся на втором диске. Каждый накопитель имеет собственный независимый канал SATA 2.
Результаты тестов GeekBench и CineBench на хосте Mac Pro должны обеспечить практический верхний предел производительности, который мы должны увидеть в любой из виртуальных сред. При этом мы хотим отметить, что виртуальная среда может превышать производительность хоста в любом одном тесте. Виртуальная среда может иметь доступ к базовому оборудованию и обходить некоторые уровни ОС OS X. Также возможно, чтобы тестовые комплекты тестов были обмануты системой кэширования производительности, встроенной в виртуальные среды, и дали результаты, которые намного превосходят возможности, которые действительно возможны.
Результаты тестов
GeekBench 2.1.4
GeekBench Оценка: 6830
Целое число: 6799
Плавающая точка: 10786
Память: 2349
Поток: 2057
CineBench R10
Rendering, Single CPU: 3248
Рендеринг, 4 CPU: 10470
Эффективная скорость от одного до всех процессоров: 3.22
Затенение (OpenGL): 3249
Подробные результаты тестовых тестов доступны в тестовой галерее виртуализации.
04 из 07Тест Benchmark для виртуализации: результаты тестов для Parallels Desktop для Mac 5
Мы использовали последнюю версию Parallels (Parallels Desktop для Mac 5.0). Мы установили новые копии Parallels, Windows XP SP3 и Windows 7. Мы выбрали эти две ОС Windows для тестирования, поскольку мы считаем, что Windows XP представляет собой подавляющее большинство текущих установок Windows в OS X, и что в будущем Windows 7 будет самая распространенная гостевая ОС, работающая на Mac.
Перед началом тестирования мы проверили и установили все доступные обновления как для виртуальной среды, так и для двух операционных систем Windows. Когда все было в курсе, мы настроили виртуальные машины Windows на использование одного процессора и 1 ГБ памяти. Мы закрыли Parallels и отключили Time Machine и любые элементы запуска на Mac Pro, не необходимые для тестирования. Затем мы перезапустили Mac Pro, запустили Parallels, запустили одну из сред Windows и выполнили два набора тестовых тестов. Как только тесты были завершены, мы скопировали результаты на Mac для последующей справки.
Затем мы повторили перезапуск и запуск Parallels для тестовых тестов второй ОС Windows.
Наконец, мы повторили вышеприведенную последовательность с гостевой ОС, установленной для использования 2, а затем 4 CPU.
Результаты тестов
GeekBench 2.1.4
Windows XP SP3 (1,2,4 CPU): 2185, 3072, 4377
Windows 7 (1,2,4 ЦП): 2223, 2980, 4560
CineBench R10
Windows XP SP3
Рендеринг (1,2,4 ЦП): 2724, 5441, 9644
Шейдинг (OpenGL) (1,2,4 ЦП): 1317, 1317, 1320
CineBench R10
Windows 7
Рендеринг (1,2,4 ЦП): 2835, 5389, 9508
Шейдинг (OpenGL) (1,2,4 ЦП): 1335, 1333, 1375
Parallels Desktop для Mac 5.0 успешно завершил все контрольные тесты. GeekBench видел лишь незначительные различия в производительности между Windows XP и Windows 7, что и ожидалось. GeekBench концентрируется на тестировании производительности процессора и памяти, поэтому мы ожидаем, что он станет хорошим показателем базовой производительности виртуальной среды и того, насколько она делает доступным аппаратное обеспечение хоста Mac Pro для гостевых ОС.
Тест рендеринга CineBench также показал согласованность между двумя операционными системами Windows. Еще раз, этого следует ожидать, так как тест рендеринга широко использует процессоры и пропускную способность памяти, как видно гостевой ОС. Тест на затенение - хороший показатель того, насколько хорошо каждая виртуальная среда реализовала свой видеодрайвер. В отличие от остальных аппаратных средств Mac, графическая карта не предоставляется непосредственно в виртуальных средах. Это связано с тем, что графическая карта должна постоянно следить за дисплеем для среды хоста и не может быть перенаправлена для отображения только гостевой среды. Это верно, даже если виртуальная среда предлагает полноэкранный режим отображения.
Подробные результаты тестовых тестов доступны в тестовой галерее виртуализации.
05 из 07Тест производительности виртуализации: результаты тестов для VMWare Fusion 3.0
Мы использовали последнюю версию VMWare Fusion (Fusion 3.0). Мы установили новые копии Fusion, Windows XP SP3 и Windows 7. Мы выбрали эти две ОС Windows для тестирования, поскольку мы считаем, что Windows XP представляет собой подавляющее большинство текущих установок Windows в OS X, и что в будущем Windows 7 будет самая распространенная гостевая ОС, работающая на Mac.
Перед началом тестирования мы проверили и установили любые доступные обновления как для виртуальной среды, так и для двух операционных систем Windows. Когда все было в курсе, мы настроили виртуальные машины Windows на использование одного процессора и 1 ГБ памяти.Мы отключили Fusion и отключили Time Machine и любые элементы запуска на Mac Pro, которые не нужны для тестирования. Затем мы перезапустили Mac Pro, запустили Fusion, запустили одну из сред Windows и выполнили два набора тестовых тестов. По завершении тестов мы скопировали результаты на Mac для последующего использования.
Затем мы повторили перезапуск и запуск Fusion для тестовых тестов второй ОС Windows.
Наконец, мы повторили вышеприведенную последовательность с гостевой ОС, установленной для использования 2, а затем 4 CPU.
Результаты тестов
GeekBench 2.1.4
Windows XP SP3 (1,2,4 ЦП): *, 3252, 4406
Windows 7 (1,2,4 ЦП): 2388, 3174, 4679
CineBench R10
Windows XP SP3
Рендеринг (1,2,4 ЦП): 2825, 5449, 9941
Шейдинг (OpenGL) (1,2,4 ЦП): 821, 821, 827
CineBench R10
Windows 7
Рендеринг (1,2,4 ЦП): 2843, 5408, 9657
Затенение (OpenGL) (1,2,4 ЦП): 130, 130, 124
Мы столкнулись с проблемами с Fusion и тестовыми испытаниями. В случае Windows XP с одним процессором GeekBench сообщила о производительности потока памяти со скоростью, превышающей 25-кратный темп хоста Mac Pro. Этот необычный результат памяти столкнулся с оценкой GeekBench для одной версии процессора Windows XP до 8148. После повторения теста много раз и получения аналогичных результатов мы решили пометить тест как недействительный и рассмотреть его как проблему взаимодействия между тестовым тестом Fusion , и Windows XP. Насколько мы можем судить, для конфигурации одного процессора Fusion не сообщал о правильной конфигурации оборудования в приложении GeekBench. Однако GeekBench и Windows XP безупречно работали с двумя или более выбранными процессорами.
У нас также была проблема с Fusion, Windows 7 и CineBench. Когда мы запускали CineBench под Windows 7, он сообщал об общей видеокарте в качестве единственного доступного графического оборудования. Хотя общая графическая карта способна запускать OpenGL, она делала это очень плохо. Возможно, это было результатом того, что хост Mac Pro имеет старую графическую карту NVIDIA GeForce 7300. Системные требования Fusion предлагают более современную графическую карту. Однако нам показалось интересным, что в Windows XP тест на затенение CineBench прошел без каких-либо проблем.
Помимо упомянутых выше двух причуд, производительность Fusion была наравне с тем, что мы ожидали от хорошо продуманной виртуальной среды.
Подробные результаты тестовых тестов доступны в тестовой галерее виртуализации.
06 из 07Тест производительности виртуализации: результаты тестов для Sun VirtualBox
Мы использовали последнюю версию Sun VirtualBox (VirtualBox 3.0). Мы установили новые копии VirtualBox, Windows XP SP3 и Windows 7. Мы выбрали эти две ОС Windows для тестирования, потому что мы считаем, что Windows XP представляет собой подавляющее большинство текущих установок Windows в OS X, и что в будущем Windows 7 будет самая распространенная гостевая ОС, работающая на Mac.
Перед началом тестирования мы проверили и установили любые доступные обновления как для виртуальной среды, так и для двух операционных систем Windows. Когда все было в курсе, мы настроили виртуальные машины Windows на использование одного процессора и 1 ГБ памяти. Мы отключили VirtualBox и отключили Time Machine и любые элементы запуска на Mac Pro, которые не нужны для тестирования. Затем мы перезапустили Mac Pro, запустили VirtualBox, запустили одну из сред Windows и выполнили два набора тестовых тестов. По завершении тестов мы скопировали результаты на Mac для последующего использования.
Затем мы повторили перезапуск и запуск Fusion для тестовых тестов второй ОС Windows.
Наконец, мы повторили вышеприведенную последовательность с гостевой ОС, установленной для использования 2, а затем 4 CPU.
Результаты тестов
GeekBench 2.1.4
Windows XP SP3 (1,2,4 CPU): 2345, *, *
Windows 7 (1,2,4 ЦП): 2255, 2936, 3926
CineBench R10
Windows XP SP3
Рендеринг (1,2,4 ЦП): 7001, *, *
Шейдинг (OpenGL) (1,2,4 ЦП): 1025, *, *
CineBench R10
Windows 7
Рендеринг (1,2,4 ЦП): 2570, 6863, 13344
Шейдинг (OpenGL) (1,2,4 ЦП): 711, 710, 1034
Sun VirtualBox и наши настольные приложения столкнулись с проблемой с Windows XP. В частности, как GeekBench, так и CineBench не смогли увидеть больше, чем один процессор, независимо от того, как мы настроили гостевую ОС.
Когда мы протестировали Windows 7 с GeekBench, мы заметили, что многопроцессорное использование было низким, что привело к самым низким результатам для 2 и 4 конфигураций ЦП. Производительность одного процессора, похоже, была наравне с другими виртуальными средами.
CineBench также не смог увидеть больше одного процессора при работе под управлением Windows XP. Кроме того, тест рендеринга для однопроцессорной версии Windows XP обеспечил один из самых быстрых результатов, превышающий даже сам Mac Pro. Мы попытались повторить тест несколько раз; все результаты были в том же диапазоне. Мы считаем безопасным помешать результатам рендеринга одиночных процессоров Windows XP для проблемы с VirtualBox и того, как он использует процессоры.
Мы также увидели странную ошибку в результатах рендеринга для 2 и 4 тестов CPU с Windows 7. В каждом случае рендеринг более чем удваивается по скорости при переходе от 1 до 2 процессоров и от 2 до 4 процессоров. Этот тип увеличения производительности маловероятен, и мы снова примем его на реализацию VirtualBox с поддержкой нескольких процессоров.
При всех проблемах с тестовым тестированием VirtualBox единственными действительными результатами тестирования могут быть только те, что для одного процессора под Windows 7.
Подробные результаты тестовых тестов доступны в тестовой галерее виртуализации.
07 из 07Тест производительности виртуализации: результаты
При выполнении всех эталонных тестов пришло время пересмотреть наш первоначальный вопрос.
Разве три основных игрока в виртуализации на Mac (Parallels Desktop для Mac, VMWare Fusion и Sun VirtualBox) оправдывают обещание почти собственной производительности?
Ответ - смешанная сумка. Ни один из кандидатов на виртуализацию в наших тестах GeekBench не смог измерить производительность хоста Mac Pro. Лучший результат был зафиксирован Fusion, который смог достичь почти 68,5% производительности хоста. Параллели были близки к отметке 66,7%. Вывод сзади был VirtualBox на 57,4%.
Когда мы посмотрели результаты CineBench, который использует более реальный тест для рендеринга изображений, они были очень близки к оценке хоста. Еще раз, Fusion оказался на вершине тестов рендеринга, достигнув 94,9% производительности хоста. Параллели пошли на 92,1%. VirtualBox не смог достоверно завершить тест рендеринга, выбив его из разговора. На одной итерации теста рендеринга VirtualBox сообщил, что он выполнил 127,4% лучше, чем хост, в то время как в других он не смог начать или завершить.
Тест на затенение, в котором рассматривается, насколько хорошо работает графическая карта с использованием OpenGL, оказался наихудшим среди всех виртуальных сред. Лучшим исполнителем был Parallels, который достиг 42,3% возможностей хоста. VirtualBox занял второе место на 31,5%; Fusion занял третье место на уровне 25,4%.
Выбор победителя - это то, что мы оставим конечному пользователю. У каждого продукта есть свои плюсы и минусы, и во многих случаях эталонные номера настолько близки, что повторение тестов может изменить положение.
То, что показывают тестовые оценки тестов, заключается в том, что универсальная возможность использования собственной видеокарты - вот что удерживает виртуальную среду от полной замены выделенного ПК. Тем не менее, более современная графическая карта, чем мы здесь, может привести к более высоким показателям производительности в тесте затенения, особенно для Fusion, разработчик которого предлагает лучшие графические карты производительности для достижения наилучших результатов.
Вы заметите, что некоторые комбинации тестов (виртуальная среда, версия Windows и тестовый тест) отображали проблемы, нереалистичные результаты или неспособность завершить тест. Эти типы результатов не должны использоваться в качестве индикаторов проблем с виртуальной средой. Тесты производительности - это необычные приложения для работы в виртуальной среде. Они предназначены для измерения производительности физических устройств, которые виртуальная среда не позволяет им получить доступ. Это не провал виртуальной среды, и в реальном мире у нас не было проблем с подавляющим большинством приложений Windows, работающих под виртуальной системой.
Все виртуальные среды, которые мы тестировали (Parallels Desktop для Mac 5.0, VMWare Fusion 3.0 и Sun VirtualBox 3.0), обеспечивают хорошую производительность и стабильность в повседневном использовании и должны быть в состоянии служить основной средой Windows для повседневной работы Приложения.