Известный ИТ-портал AnandTech совместно с лабораторией Sizing Server Lab создали утилиту для тестирования основных виртуальных платформ VMware ESX, Citrix XenServer и Microsoft Hyper-V. Поводом послужило отсутствие независимых от производителей утилит, плюс их предвзятость к платформам.
Тест создает 4 “тяжёлые” виртуальные машины с 4 процессорами и 4 ГБ ОЗУ. Используются следующие приложения:
1 x OLAP БД на основе SQL Server 2008 x64, запущенного в Windows 2008 64-bit с использованием данных Nieuws.be (более 100GB в сотнях таблиц)
2 x MCS eFMS порталы на PHP, IIS в Windows 2003 R2.
1 x OLTP БД, на основе Oracle 10G Calling Circle benchmark от Dominic Giles
Все виртуалки запускались одновременно, получилась такая таблица результатов по сравнению с эталонной системой, в которой тесты запускались раздельно.
Производительность ESX 3.5 U4 относительно эталонной системы | ||||
Процессоры | OLAP ВМ1 | Портал ВМ2 | Портал ВМ3 | OLTP ВМ4 |
Dual Xeon X5570 2.93 | 94% | 50% | 51% | 59% |
Dual Xeon X5570 2.93 HT off | 92% | 43% | 43% | 43% |
Dual Xeon E5450 3.0 | 82% | 36% | 36% | 45% |
Dual Xeon X5365 3.0 | 79% | 35% | 35% | 32% |
Dual Xeon L5350 1.86 | 54% | 24% | 24% | 20% |
Dual Xeon 5080 3.73 | 47% | 12% | 12% | 7% |
Dual Opteron 8389 2.9 | 85% | 39% | 39% | 51% |
Dual Opteron 2222 3.0 | 50% | 17% | 17% | 12% |
Результаты эталонной системы:
Opteron Shanghai 8389 2.9GHz | |
Тест | Результат |
OLAP – Nieuws.be | 175.3 запросов/сек |
Портал – MCS | 45.8 URL/сек |
OLTP – Calling Circle | 155.3 транзакций/сек |
При этом в эталонной машине использовалось 4 ядра на одном процессоре, как и в ВМ, а виртуалки уже запускались на двух 4-ядерных процессорах, так что физических ядер им досталось по 2. Сам тест не зависит от операций вводы-вывода(очередь сведена к нулю, благодаря SSD-накопителям), памяти достаточно, скорости сети с избытком. Тест генерирует нагрузку на процессоры близкую к 100%.
Полученные проценты умножались на 4, затем расчитывали среднее геометрическое, что и было результатом.
Советую, всем ознакомиться с методикой тестирования и тестированием, к сожалению, продукт публично не доступен и вряд ли будет.
Полный обзор на AnandTech.
Интересно – кто больше проводит в ядре, тот больще проигрывает
Nieuws.be / VM1 0.65%
MCS eFMS / VM2&3 8%
Oracle / VM4 17%
Хотя к тесту Oracle у меня и так есть вопросы
Мы оба не поняли методику:
Итак. Они взяли эталонную не виртуальную систему с одним Opteron 8389 2.9 (4 ядра) и померили производительность каждой из будщих ВМ.
Затем они запускали все четыре виртуалки одновременно на сервере с двумя процессорами (8 ядер). понятно, что по статистике, должно получиться где-то 50% от эталона, так как каждой ВМ достается только по два ядра.
И здесь мы видим, что менее всего находящаяся в ядре ВМ1 объела остальных.
P.S. Тест тестирует только нагрузку на процессор. увы. Подсистема ввода-вывода вообще не затронута.
P.P.S. В сумме Dual Opteron 8389 2.9 дал 214% т.е. эффективность гипервизора по тесту более 100% 😉 на самом деле, видимо, распараллеливание ввода-вывода сыграло свою роль.
Про то, что эталонная система это железяка, я просто забыл указать, а вот, что в ней 1 проц на железе и 2 при тесте виртуалок просмотрел.
Перечитал ещё раз расчёт результата, заметку поправил, и добавил нужную инфу.
Мда, вот к чему приводят очень много буковок на неродном языке.
Приношу извинения всем, кого ввёл в заблуждение относительно результатов.
Сергей, спасибо за комментарии, я, как раз, перечитывал статью подробно, а благодаря замечания, поправился.
>В сумме Dual Opteron 8389 2.9 дал 214% т.е. эффективность гипервизора по тесту более 100%, на самом деле, видимо, распараллеливание ввода-вывода сыграло свою роль.
Нет, тест ведь ввод-вывод “независим”, просто весь тест есть свободное время процов исодя из цифр в твоём первом посте.
0,65+8+8+17% всего 33,65%, вот тут 4 виртуалки и умудряются уплотниться (“уплотнение по времени”), плюс нагрузка процов не идеальная от 100% из той же таблички http://it.anandtech.com/IT/showdoc.aspx?i=3567&p=4, вот и получается что 214% это ещё не максимально теоретически возможный результат.
Вот так рождается истина. Уж больно мутно у AnandTech описание написано.
Время которое система провела в ядре в ядре вычитать нельзя, его так и так там провести придется. Вот то, что процессора были недогружены, особенно в тесте с php я проглядел. Ну и суммировать проценты в этом случае тоже не совсем правильно.
В общем чуда не произошло. А то увидев в тесте Oracle на двухядерном Xeon 5080 7% от оригинала я тихо офигел.
Ну и напоследок, тест нужен, но у AnandTech он не получился.
Встретил ещё одно тестирование гипервизоров веб-приложением
http://ivoras.sharanet.org/blog/tree/2009-04-25.some-virtualization-benchmarks.html
http://blogs.vmware.com/performance/2009/05/java-performance-on-vsphere-4.html
свеженький