Środowiska wirtualizacji stały się popularnym towarem dla użytkowników komputerów Mac, odkąd firma Apple zaczęła używać procesorów Intel w swoich komputerach. Jeszcze przed pojawieniem się firmy Intel dostępne było oprogramowanie do emulacji, które umożliwiało użytkownikom komputerów Mac uruchamianie systemów Windows i Linux.
Jednak emulacja była powolna, przy użyciu warstwy abstrakcji do tłumaczenia kodu programowania x86 na kod używany przez architekturę PowerPC wcześniejszych komputerów Mac. Ta warstwa abstrakcji musiała przełożyć się nie tylko na typ procesora, ale także na wszystkie komponenty sprzętowe. Zasadniczo warstwa abstrakcji musiała tworzyć programowe odpowiedniki kart graficznych, dysków twardych, portów szeregowych itp. W rezultacie powstało środowisko emulacyjne, które mogło działać w systemie Windows lub Linux, ale było poważnie ograniczone zarówno pod względem wydajności, jak i systemów operacyjnych, których można było używać.
Wraz z nadejściem decyzji Apple o korzystaniu z procesorów Intel, cała potrzeba emulacji została wyeliminowana. W jego miejsce pojawiła się możliwość uruchamiania innych systemów operacyjnych bezpośrednio na komputerze Intel Mac. Jeśli chcesz uruchomić system Windows bezpośrednio na komputerze Mac jako opcję podczas uruchamiania, możesz użyć Boot Camp, aplikacji dostarczanej przez firmę Apple jako wygodnego sposobu instalacji systemu Windows w środowisku wielosystemowym.
Ale wielu użytkowników potrzebuje sposobu na jednoczesne uruchamianie systemu Mac OS i drugiego systemu operacyjnego. Firma Parallels, a później VMWare i Sun, wprowadziła tę możliwość na komputery Mac dzięki technologii wirtualizacji. Wirtualizacja jest podobna w koncepcji do emulacji, ale ponieważ komputery Mac z procesorami Intel używają tego samego sprzętu, co standardowe komputery PC, nie ma potrzeby tworzenia warstwy abstrakcji sprzętu w oprogramowaniu. Zamiast tego oprogramowanie Windows lub Linux może działać bezpośrednio na sprzęcie, zapewniając prędkości prawie tak szybkie, jak gdyby system operacyjny gościa działał na komputerze.
I to jest pytanie, na które szukają odpowiedzi nasze testy porównawcze. Czy trzech głównych graczy w dziedzinie wirtualizacji na komputerach Mac - Parallels Desktop for Mac, VMWare Fusion i Sun VirtualBox - spełnia obietnicę niemal naturalnej wydajności?
Mówimy „prawie naturalne”, ponieważ wszystkie środowiska wirtualizacji wiążą się z pewnym obciążeniem, którego nie można uniknąć. Ponieważ środowisko wirtualne działa w tym samym czasie, co „wbudowany” system operacyjny (OS X, teraz macOS), zasoby sprzętowe muszą być współdzielone. Ponadto system OS X musi zapewniać pewne usługi środowisku wirtualizacji, takie jak usługi okienkowe i podstawowe. Połączenie tych usług i współdzielenia zasobów ma tendencję do ograniczania możliwości działania zwirtualizowanego systemu operacyjnego.
Aby odpowiedzieć na to pytanie, przeprowadzimy testy porównawcze, aby zobaczyć, jak dobrze trzy główne środowiska wirtualizacji radzą sobie z systemem Windows.
Metoda testowania
Tom Nelson. Lifewire, 2016.
Będziemy używać dwóch różnych, popularnych, wieloplatformowych zestawów testów porównawczych. Pierwszy, CineBench 10, przeprowadza rzeczywisty test procesora komputera i zdolności jego karty graficznej do renderowania obrazów. Pierwszy test wykorzystuje procesor do renderowania fotorealistycznego obrazu, wykorzystując obliczenia intensywnie korzystające z procesora do renderowania odbić, zaciemnienia otoczenia, oświetlenia i cieniowania obszaru i nie tylko. Test jest wykonywany z pojedynczym procesorem lub rdzeniem, a następnie powtarzany przy użyciu wszystkich dostępnych procesorów i rdzeni. Wynik daje referencyjną ocenę wydajności dla komputera z pojedynczym procesorem, ocenę dla wszystkich procesorów i rdzeni oraz wskaźnik wykorzystania wielu rdzeni lub procesorów.
Drugi test CineBench ocenia wydajność karty graficznej komputera przy użyciu OpenGL do renderowania sceny 3D, gdy kamera porusza się w obrębie sceny. Ten test określa, jak szybko karta graficzna może działać, jednocześnie dokładnie renderując scenę.
Drugim pakietem testów jest GeekBench 2.1.4, który testuje wydajność procesora w liczbach całkowitych i zmiennoprzecinkowych, testuje pamięć za pomocą prostego testu wydajności odczytu/zapisu i wykonuje test strumieni, który mierzy stałą przepustowość pamięci. Wyniki zestawu testów są łączone w celu uzyskania pojedynczego wyniku GeekBench. Przedstawimy również cztery podstawowe zestawy testowe (wydajność liczb całkowitych, wydajność zmiennoprzecinkową, wydajność pamięci i wydajność strumienia), dzięki czemu będziemy mogli zobaczyć mocne i słabe strony każdego środowiska wirtualnego.
GeekBench używa systemu referencyjnego opartego na PowerMac G5 @1,6 GHz. Wyniki GeekBench dla systemów referencyjnych są znormalizowane do 1000. Każdy wynik wyższy niż 1000 wskazuje, że komputer działa lepiej niż system referencyjny.
Ponieważ wyniki obu zestawów testów są nieco abstrakcyjne, zaczniemy od zdefiniowania systemu referencyjnego. W tym przypadku systemem referencyjnym będzie komputer Mac używany do uruchamiania trzech środowisk wirtualnych (Parallels Desktop for Mac, VMWare Fusion i Sun Virtual Box). Przeprowadzimy oba pakiety testów porównawczych w systemie referencyjnym i użyjemy tej liczby do porównania wydajności środowisk wirtualnych.
Wszystkie testy zostaną przeprowadzone po ponownym uruchomieniu systemu hosta i środowiska wirtualnego. Zarówno host, jak i środowiska wirtualne będą miały wyłączone wszystkie aplikacje antywirusowe i antywirusowe. Wszystkie środowiska wirtualne będą uruchamiane w standardowym oknie OS X, ponieważ jest to najczęściej stosowana metoda we wszystkich trzech środowiskach. W przypadku środowisk wirtualnych nie będą uruchamiane żadne aplikacje użytkownika poza benchmarkami. W systemie hosta, z wyjątkiem środowiska wirtualnego, nie będą uruchomione żadne aplikacje użytkownika poza edytorem tekstu do robienia notatek przed i po testowaniu, ale nigdy podczas samego procesu testowania.
Wyniki testu porównawczego dla systemu hosta Mac Pro
Tom Nelson. Lifewire, 2016.
System, który będzie obsługiwał trzy środowiska wirtualne (Parallels Desktop for Mac, VMWare Fusion i Sun VirtualBox) to wersja 2006 komputera Mac Pro:
Mac Pro (2006)
- Dwa dwurdzeniowe procesory Zeon 5160 (łącznie 4 rdzenie) @ 3,00 GHz
- 4 MB na rdzeń pamięci podręcznej L2 RAM (łącznie 16 MB)
- 6 GB RAM składający się z czterech modułów 1 GB i czterech modułów 512 MB. Wszystkie moduły są dopasowanymi parami.
- Szyna frontowa 1,33 GHz
- Karta graficzna NVIDIA GeForce 7300 GT
- Dwa dyski twarde Samsung F1 o pojemności 500 GB. OS X i oprogramowanie do wirtualizacji znajdują się na dysku startowym; systemy gościa są przechowywane na drugim dysku. Każdy dysk ma swój własny niezależny kanał SATA 2.
Wyniki testów GeekBench i CineBench na hoście Mac Pro powinny zapewnić praktyczną górną granicę wydajności, którą powinniśmy zobaczyć w dowolnym środowisku wirtualnym. Biorąc to pod uwagę, chcemy podkreślić, że środowisko wirtualne może przekroczyć wydajność hosta w dowolnym pojedynczym teście. Środowisko wirtualne może mieć dostęp do podstawowego sprzętu i ominąć niektóre warstwy systemu operacyjnego OS X. Możliwe jest również, że zestawy testów porównawczych zostaną oszukane przez system buforowania wydajności wbudowany w środowiskach wirtualnych i dadzą wyniki, które znacznie przewyższają potencjalną wydajność.
Wyniki porównawcze
GeekBench 2.1.4
- Wynik GeekBench: 6830
- Liczba całkowita: 6799
- Punkt zmiennoprzecinkowy: 10786
- Pamięć: 2349
- Strumień: 2057
CineBench R10
- Renderowanie, pojedynczy procesor: 3248
- Renderowanie, 4 procesory: 10470
- Efektywne przyspieszenie od jednego do wszystkich procesorów: 3.22
- Cieniowanie (OpenGL): 3249
Szczegółowe wyniki testów porównawczych są dostępne w galerii testów porównawczych wirtualizacji.
Wyniki testu porównawczego dla Parallels Desktop for Mac 5
Tom Nelson. Lifewire, 2016.
Użyliśmy najnowszej wersji programu Parallels (Parallels Desktop for Mac 5.0). Zainstalowaliśmy nowe kopie Parallels, Windows XP SP3 i Windows 7. Wybraliśmy te dwa systemy Windows do testowania, ponieważ uważamy, że Windows XP reprezentuje zdecydowaną większość obecnych instalacji Windows na OS X i że w przyszłości Windows 7 będzie najpopularniejszy system operacyjny gościa działający na Macu.
Przed rozpoczęciem testów sprawdziliśmy i zainstalowaliśmy wszystkie dostępne aktualizacje zarówno dla środowiska wirtualnego, jak i dwóch systemów operacyjnych Windows. Gdy wszystko było zaktualizowane, skonfigurowaliśmy maszyny wirtualne Windows tak, aby korzystały z jednego procesora i 1 GB pamięci. Wyłączyliśmy Parallels i wyłączyliśmy Time Machine oraz wszelkie elementy startowe na komputerze Mac Pro, które nie są potrzebne do testowania. Następnie ponownie uruchomiliśmy komputer Mac Pro, uruchomiliśmy Parallels, uruchomiliśmy jedno ze środowisk Windows i przeprowadziliśmy dwa zestawy testów porównawczych. Po zakończeniu testów skopiowaliśmy wyniki na komputer Mac w celu późniejszego wykorzystania.
Następnie powtórzyliśmy restart i uruchomienie Parallels do testów porównawczych drugiego systemu operacyjnego Windows.
Na koniec powtórzyliśmy powyższą sekwencję z systemem gościa ustawionym na użycie 2, a następnie 4 procesorów.
Wyniki porównawcze
GeekBench 2.1.4
- Windows XP SP3 (1, 2, 4 procesory): 2185, 3072, 4377
- Windows 7 (1, 2, 4 procesory): 2223, 2980, 4560
CineBench R10
- SP3 dla systemu Windows XP
- Renderowanie (1, 2, 4 procesory): 2724, 5441, 9644
- Cieniowanie (OpenGL) (1, 2, 4 procesory): 1317, 1317, 1320
CineBench R10
- Windows 7
- Renderowanie (1, 2, 4 procesory): 2835, 5389, 9508
- Cieniowanie (OpenGL) (1, 2, 4 procesory): 1335, 1333, 1375
Parallels Desktop for Mac 5.0 ukończył wszystkie testy porównawcze. GeekBench zauważył tylko niewielkie różnice w wydajności między Windows XP i Windows 7, czego się spodziewaliśmy. GeekBench koncentruje się na testowaniu wydajności procesora i pamięci, więc spodziewamy się, że będzie to dobry wskaźnik podstawowej wydajności środowiska wirtualnego i tego, jak dobrze udostępnia sprzęt hosta Mac Pro dla systemów-gości.
Test renderowania CineBench również wykazał spójność w dwóch systemach operacyjnych Windows. Po raz kolejny należy się tego spodziewać, ponieważ test renderowania w dużym stopniu wykorzystuje procesory i przepustowość pamięci widzianą przez systemy gościa. Test cieniowania jest dobrym wskaźnikiem tego, jak dobrze każde środowisko wirtualne zaimplementowało swój sterownik wideo. W przeciwieństwie do reszty sprzętu Maca, karta graficzna nie jest udostępniana bezpośrednio w środowiskach wirtualnych. Dzieje się tak, ponieważ karta graficzna musi stale dbać o wyświetlanie w środowisku hosta i nie można jej przekierować do wyświetlania tylko środowiska gościa. Dzieje się tak, nawet jeśli środowisko wirtualne oferuje opcję wyświetlania na pełnym ekranie.
Szczegółowe wyniki testów porównawczych są dostępne w galerii testów porównawczych wirtualizacji.
Wyniki testu porównawczego dla VMWare Fusion 3.0
Tom Nelson. Lifewire, 2016.
Użyliśmy najnowszej wersji VMWare Fusion (Fusion 3.0). Zainstalowaliśmy nowe kopie Fusion, Windows XP SP3 i Windows 7. Wybraliśmy te dwa systemy Windows do testów, ponieważ uważamy, że Windows XP reprezentuje zdecydowaną większość obecnych instalacji Windows na OS X i że w przyszłości Windows 7 będzie najpopularniejszy system operacyjny gościa działający na komputerze Mac.
Przed rozpoczęciem testów sprawdziliśmy i zainstalowaliśmy wszelkie dostępne aktualizacje zarówno dla środowiska wirtualnego, jak i dwóch systemów operacyjnych Windows. Gdy wszystko było zaktualizowane, skonfigurowaliśmy maszyny wirtualne Windows tak, aby korzystały z jednego procesora i 1 GB pamięci. Wyłączyliśmy Fusion i wyłączyliśmy Time Machine oraz wszelkie elementy startowe na Macu Pro, które nie były potrzebne do testów. Następnie ponownie uruchomiliśmy komputer Mac Pro, uruchomiliśmy Fusion, uruchomiliśmy jedno ze środowisk Windows i przeprowadziliśmy dwa zestawy testów porównawczych. Po zakończeniu testów skopiowaliśmy wyniki na komputer Mac w celu późniejszego wykorzystania.
Następnie powtórzyliśmy ponowne uruchomienie i uruchomienie Fusion w testach porównawczych drugiego systemu operacyjnego Windows.
Na koniec powtórzyliśmy powyższą sekwencję z systemem gościa ustawionym na użycie 2, a następnie 4 procesorów.
Wyniki porównawcze
GeekBench 2.1.4
- Windows XP SP3 (1, 2, 4 procesory):, 3252, 4406
- Windows 7 (1, 2, 4 procesory): 2388, 3174, 4679
CineBench R10
- SP3 dla systemu Windows XP
- Renderowanie (1, 2, 4 procesory): 2825, 5449, 9941
- Cieniowanie (OpenGL) (1, 2, 4 procesory): 821, 821, 827
CineBench R10
- Windows 7
- Renderowanie (1, 2, 4 procesory): 2843, 5408, 9657
- Cieniowanie (OpenGL) (1, 2, 4 procesory): 130, 130, 124
Napotkaliśmy problemy z Fusion i testami porównawczymi. W przypadku systemu Windows XP z pojedynczym procesorem GeekBench zgłosił wydajność strumienia pamięci z szybkością lepszą niż 25-krotność szybkości hosta Mac Pro. Ten niezwykły wynik dotyczący pamięci podniósł wynik GeekBench dla wersji systemu Windows XP z pojedynczym procesorem do 8148. Po wielu powtórzeniach testu i uzyskaniu podobnych wyników zdecydowaliśmy się oznaczyć test jako nieważny i uznać go za problem z interakcją między testem porównawczym, Fusion i Windows XP. Jak najlepiej możemy powiedzieć, w przypadku konfiguracji z jednym procesorem Fusion nie zgłaszał prawidłowej konfiguracji sprzętowej aplikacji GeekBench. Jednak GeekBench i Windows XP działały bezbłędnie przy dwóch lub więcej wybranych procesorach.
Mieliśmy również problem z Fusion, Windows 7 i CineBench. Kiedy uruchomiliśmy CineBench w systemie Windows 7, zgłosił on ogólną kartę graficzną jako jedyny dostępny sprzęt graficzny. Chociaż ogólna karta graficzna była w stanie uruchomić OpenGL, robiła to w fatalnym tempie. Może to być wynikiem tego, że host Mac Pro ma starą kartę graficzną NVIDIA GeForce 7300. Wymagania systemowe Fusion sugerują bardziej nowoczesną kartę graficzną. Zaciekawiło nas jednak, że w systemie Windows XP test cieniowania CineBench przebiegł bez żadnych problemów.
Poza dwoma wymienionymi powyżej dziwactwami wydajność Fusion była na równi z tym, czego oczekiwaliśmy od dobrze zaprojektowanego środowiska wirtualnego.
Szczegółowe wyniki testów porównawczych są dostępne w galerii testów porównawczych wirtualizacji.
Wyniki testu porównawczego dla Sun VirtualBox
Tom Nelson. Lifewire, 2016.
Użyliśmy najnowszej wersji Sun VirtualBox (VirtualBox 3.0). Zainstalowaliśmy nowe kopie VirtualBox, Windows XP SP3 i Windows 7. Wybraliśmy te dwa systemy Windows do testowania, ponieważ uważamy, że Windows XP reprezentuje zdecydowaną większość obecnych instalacji Windows na OS X i że w przyszłości Windows 7 będzie najpopularniejszy system operacyjny gościa działający na Macu.
Przed rozpoczęciem testów sprawdziliśmy i zainstalowaliśmy wszelkie dostępne aktualizacje zarówno dla środowiska wirtualnego, jak i dwóch systemów operacyjnych Windows. Gdy wszystko było zaktualizowane, skonfigurowaliśmy maszyny wirtualne Windows tak, aby korzystały z jednego procesora i 1 GB pamięci. Wyłączyliśmy VirtualBox i wyłączyliśmy Time Machine oraz wszelkie elementy startowe na komputerze Mac Pro, które nie są potrzebne do testowania. Następnie ponownie uruchomiliśmy komputer Mac Pro, uruchomiliśmy VirtualBox, uruchomiliśmy jedno ze środowisk Windows i przeprowadziliśmy dwa zestawy testów porównawczych. Po zakończeniu testów skopiowaliśmy wyniki na komputer Mac w celu późniejszego wykorzystania.
Następnie powtórzyliśmy ponowne uruchomienie i uruchomienie Fusion w testach porównawczych drugiego systemu operacyjnego Windows.
Na koniec powtórzyliśmy powyższą sekwencję z systemem gościa ustawionym na użycie 2, a następnie 4 procesorów.
Wyniki porównawcze
GeekBench 2.1.4
- Windows XP SP3 (1, 2, 4 procesory): 2345,,
- Windows 7 (1, 2, 4 procesory): 2255, 2936, 3926
CineBench R10
- SP3 dla systemu Windows XP
- Renderowanie (1, 2, 4 procesory): 7001,,
- Cieniowanie (OpenGL) (1, 2, 4 procesory): 1025,,
CineBench R10
- Windows 7
- Renderowanie (1, 2, 4 procesory): 2570, 6863, 13344
- Cieniowanie (OpenGL) (1, 2, 4 procesory): 711, 710, 1034
Sun VirtualBox i nasze aplikacje testowe napotkały problem z systemem Windows XP. W szczególności zarówno GeekBench, jak i CineBench nie były w stanie zobaczyć więcej niż jednego procesora, niezależnie od tego, jak skonfigurowaliśmy system operacyjny gościa.
Kiedy testowaliśmy system Windows 7 z GeekBench, zauważyliśmy, że wykorzystanie wielu procesorów było niewystarczające, co skutkowało najniższymi wynikami dla konfiguracji z 2 i 4 procesorami. Wydajność pojedynczego procesora wydawała się być porównywalna z innymi środowiskami wirtualnymi.
CineBench również nie widział więcej niż jednego procesora w systemie Windows XP. Również test renderowania dla wersji Windows XP z jednym procesorem przyniósł jeden z najszybszych wyników, przewyższając nawet samego Maca Pro. Kilka razy próbowaliśmy powtórzyć test; wszystkie wyniki mieściły się w tym samym zakresie. Uważamy, że można bezpiecznie przypisać wyniki renderowania pojedynczego procesora Windows XP do problemu z VirtualBox i tym, jak wykorzystuje procesory.
Zaobserwowaliśmy również dziwny skok w wynikach renderowania dla 2 i 4 testów procesora w systemie Windows 7, a w każdym przypadku szybkość renderowania wzrosła ponad dwukrotnie przy przejściu z 1 do 2 procesorów i od 2 do 4 procesorów. Ten rodzaj wzrostu wydajności jest mało prawdopodobny i po raz kolejny będziemy go sprowadzać do implementacji obsługi wielu procesorów w VirtualBox.
Przy wszystkich problemach z testami porównawczymi VirtualBox jedyne prawidłowe wyniki testów mogą dotyczyć pojedynczego procesora w systemie Windows 7.
Szczegółowe wyniki testów porównawczych są dostępne w galerii testów porównawczych wirtualizacji.
Wyniki
Po wykonaniu wszystkich testów porównawczych czas wrócić do naszego pierwotnego pytania.
Czy trzej główni gracze w wirtualizacji na komputerach Mac (Parallels Desktop for Mac, VMWare Fusion i Sun VirtualBox) spełniają obietnicę niemal naturalnej wydajności?
Odpowiedź to mieszana torba. Żaden z kandydatów do wirtualizacji w naszych testach GeekBench nie był w stanie zmierzyć się z wydajnością hosta Mac Pro. Najlepszy wynik odnotowała firma Fusion, która była w stanie osiągnąć prawie 68,5% wydajności hosta. Paralele były tuż za nimi, osiągając 66,7%. Tył był VirtualBox, na poziomie 57,4%.
Kiedy przyjrzeliśmy się wynikom CineBench, który wykorzystuje bardziej rzeczywisty test do renderowania obrazów, były one bardzo zbliżone do wyniku gospodarza. Po raz kolejny Fusion znalazł się na szczycie testów renderowania, osiągając 94,9% wydajności hosta. Równolegle nastąpiły na poziomie 92,1%. VirtualBox nie mógł niezawodnie ukończyć testu renderowania, wybijając go z rywalizacji. W jednej iteracji testu renderowania VirtualBox poinformował, że działał o 127,4% lepiej niż host, podczas gdy w innych nie był w stanie rozpocząć ani zakończyć.
Test cieniowania, który sprawdza, jak dobrze karta graficzna działa przy użyciu OpenGL, wypadł najgorzej spośród wszystkich środowisk wirtualnych. Najlepiej wypadł Parallels, który osiągnął 42,3% możliwości hosta. VirtualBox był drugi w wieku 31 lat.5%; Fusion zajęło trzecie miejsce z wynikiem 25,4%.
Wybranie ogólnego zwycięzcy pozostawimy użytkownikowi końcowemu. Każdy produkt ma swoje plusy i minusy, a w wielu przypadkach wyniki testów są tak zbliżone, że powtarzanie testów może zmienić wyniki.
Wyniki testów porównawczych pokazują, że uniwersalna możliwość korzystania z karty graficznej jest tym, co powstrzymuje wirtualne środowisko przed całkowitym zastąpieniem dedykowanego komputera. Biorąc to pod uwagę, bardziej nowoczesna karta graficzna niż ta, którą tutaj mamy, może generować wyższą wydajność w teście cieniowania, szczególnie w przypadku Fusion, którego programista sugeruje karty graficzne o wyższej wydajności, aby uzyskać najlepsze wyniki.
Zauważysz, że niektóre kombinacje testów (środowisko wirtualne, wersja systemu Windows i test porównawczy) powodowały problemy - albo nierealistyczne wyniki, albo nieukończenie testu. Tego typu wyniki nie powinny być wykorzystywane jako wskaźniki problemów ze środowiskiem wirtualnym. Testy porównawcze to nietypowe aplikacje, które próbują uruchomić w środowisku wirtualnym. Są one przeznaczone do mierzenia wydajności urządzeń fizycznych, do których środowisko wirtualne może im nie pozwolić. Nie jest to awaria środowiska wirtualnego, a w rzeczywistych zastosowaniach nie doświadczyliśmy problemów z ogromną większością aplikacji Windows działających w systemie wirtualnym.
Wszystkie przetestowane przez nas środowiska wirtualne (Parallels Desktop dla Mac 5.0, VMWare Fusion 3.0 i Sun VirtualBox 3.0) zapewniają doskonałą wydajność i stabilność w codziennym użytkowaniu i powinny być w stanie służyć jako podstawowe środowisko Windows przez większość dnia -to-dzienne aplikacje.