W ślad za poprzednimi testami wydajności XenServera, porównaniu ich z wynikami Hyper-V i zestawieniu z osiągami ESXi 3.5 przyszedł czas na dalsze testy.
Komentując rezultaty wydajności maszyn wirtualnych pod ESXi 3.5 zauważyłem, że biorąc pod uwagę największe doświadczenie VMware na arenie wirtualizacji, okazały się one rozczarowujące. Wypadły lepiej niż testy Hyper-V, jednak zdecydowanie gorzej niż XenServera. Pojawiła się jednak nowa wersja ESX(i) 4.0, która wprowadza szereg nowości, w tym całkowicie 64-bitową architekturę i możliwość wirtualizacji 8 jednostek CPU - podobnie, jak XenServer.
Co wynika z tym zmian w praktyce? Poniższa tabelka ilustruje wyniki analogicznych testów wydajności, jakie przeprowadziłem poprzednio - z tym, że na ESXi 4.0. Sprzęt pozostał taki sam, konfiguracja maszyn wirtualnych taka sama, metodologia testów przy pomocy inżynierskiej wersji Sandry taka sama.
Widać, że względem wersji 3.5 udało się poprawić wydajność wirtualizacji CPU - wyniki maszyn wirtualnych z czterema jednostkami CPU są nieco lepsze, natomiast nowa funkcjonalność wirtualizacji ośmiu procesorów pozwala maszynie wirtualnej osiągnąć wydajność zbliżoną do fizycznego serwera. Największy skok widać jednak w wydajności wirtualizacji dostępu do pamięci RAM - wyniki wersji 4.0 są o 25% lepsze niz 3.5 i praktycznie zrównują osiągi ESXa z tym, co potrafi XenServer. Widać też, że ESXi 4.0 nieźle radzi sobie z overcommitmentem procesorów (narzut przy wirtualizacji 16 procesorów na 8 fizycznych rdzeniach okazał się niewielki, nieco tylko większy niż w przypadku XenServera). Lepiej niż poprzednik radzi sobie także w scenariuszach z równoczesnym obciążeniem wielu maszyn wirtualnych testem dostępu do pamięci - widać spadek, ale niewielki, mniejszy niż w przypadku ESXi 3.5 czy Hyper-V.
Nieznacznie poprawiła się także wydajność wirtualizacji dysków. W wersji 4.0 znacznie poprawiło się jednak kopiowanie obrazów dysków w ramach jednego Datastore. Poprzednio, utworzenie drugiej kopii Windows Servera 2008 zajęło mi o wiele więcej czasu - nie mierzyłem dokładnie, niemniej różnica jest naprawdę zauważalna gołym okiem. Mała rzecz, a cieszy.
Podsumowując, wydaje się że VMware stanął na wysokości zadania i poprawił to, co w ESXi 3.5 było największą bolączką wydajnościową - poprawiono wirtualizację dostępu do pamięci RAM i zaoferowano możliwość przypisania ośmiu wirtualnych procesorów maszynom wirtualnym zrównując ich moc obliczeniową z popularnymi, dwuprocesorowymi serwerami fizycznymi.
Na koniec dodam, że podobne testy przeprowadziłem także na nowej, testowej jeszcze póki wersji Hyper-V 2.0 RC. Dokładnymi rezultatami się jednak póki co nie podzielę, tym bardziej że zabrania tego licencja wersji RC. Mogę jedynie zdradzić, że wyniki te niemal nie różnią się od osiągów Hyper-V 1.0, w szczególności wirtualizacja dostępu do pamięci RAM nadal pozostaje słabym punktem tego rozwiązania i wątpliwe, by finalna wersja dużo w tym zakresie zmieniła.