Okruženja za virtuelizaciju su bila popularna roba za korisnike Mac-a otkako je Apple počeo da koristi Intel procesore u svojim računarima. Čak i prije nego što je Intel stigao, softver za emulaciju je bio dostupan koji je omogućio Mac korisnicima da pokreću Windows i Linux.
Ali emulacija je bila spora, koristeći sloj apstrakcije za prevođenje x86 programskog koda u kod koji je koristila PowerPC arhitektura ranijih Mac-ova. Ovaj sloj apstrakcije ne samo da je morao prevesti za tip CPU-a već i za sve hardverske komponente. U suštini, sloj apstrakcije morao je stvoriti softverske ekvivalente video kartica, tvrdih diskova, serijskih portova, itd. Rezultat je bilo okruženje za emulaciju koje je moglo pokretati Windows ili Linux, ali je bilo ozbiljno ograničeno i u performansama i operativnim sistemima koji su se mogli koristiti.
Dolaskom Appleove odluke da koristi Intel procesore, cijela potreba za emulacijom je nestala. Na njegovo mjesto došla je mogućnost pokretanja drugih OS-a direktno na Intel Macu. Ako želite da pokrenete Windows direktno na Mac-u kao opciju pri pokretanju, možete koristiti Boot Camp, aplikaciju koju Apple pruža kao praktičan način za instaliranje Windowsa u okruženju sa više pokretanja.
Ali mnogim korisnicima je potreban način da istovremeno pokreću Mac OS i drugi OS. Parallels, a kasnije VMWare i Sun, donijeli su ovu mogućnost na Mac pomoću tehnologije virtuelizacije. Virtuelizacija je po konceptu slična emulaciji, ali pošto Mac računari zasnovani na Intelu koriste isti hardver kao i standardni računari, nema potrebe da se kreira sloj apstrakcije hardvera u softveru. Umjesto toga, Windows ili Linux softver može raditi direktno na hardveru, proizvodeći brzine koje mogu biti skoro jednako brze kao da gostujući OS radi na PC-u.
I to je pitanje na koje naši referentni testovi traže odgovor. Da li tri glavna igrača u virtualizaciji na Macu - Parallels Desktop za Mac, VMWare Fusion i Sun VirtualBox - ispunjavaju obećanje o skoro prirodnim performansama?
Kažemo 'gotovo prirodno' jer sva okruženja virtuelizacije imaju neke dodatne troškove koji se ne mogu izbjeći. Pošto virtuelno okruženje radi u isto vreme kada i 'ugrađeni' OS (OS X, sada macOS), mora postojati deljenje hardverskih resursa. Takođe, OS X mora da obezbedi neke usluge virtuelizovanom okruženju, kao što su prozori i osnovne usluge. Kombinacija ovih usluga i dijeljenja resursa ograničava koliko dobro virtuelizirani OS može raditi.
Da odgovorimo na pitanje, izvršićemo benchmark testove da vidimo koliko dobro rade tri glavna okruženja virtuelizacije pod Windowsom.
Metoda testiranja
Tom Nelson. Lifewire, 2016.
Koristit ćemo dva različita, popularna, cross-platformska benchmark testa. Prvi, CineBench 10, vrši testiranje procesora računara u stvarnom svetu i sposobnosti njegove grafičke kartice da renderuje slike. Prvi test koristi CPU za renderovanje fotorealistične slike, koristeći CPU intenzivne proračune za renderovanje refleksija, zatamnjenja ambijenta, osvetljenja i senčenja područja i još mnogo toga. Test se izvodi sa jednim CPU-om ili jezgrom, a zatim se ponavlja koristeći sve dostupne CPU i jezgre. Rezultat daje referentnu ocjenu performansi za računar koji koristi jedan procesor, ocjenu za sve CPU i jezgre, i indikaciju o tome koliko dobro se koristi više jezgara ili CPU-a.
Drugi CineBench test procjenjuje performanse grafičke kartice računara koristeći OpenGL za renderiranje 3D scene dok se kamera kreće unutar scene. Ovaj test određuje koliko brzo grafička kartica može raditi dok još uvijek precizno prikazuje scenu.
Drugi testni paket je GeekBench 2.1.4, koji testira performanse procesora u cjelobrojnim i pokretnim zarezima, testira memoriju koristeći jednostavan test performansi čitanja/pisanja i izvodi test tokova koji mjeri trajni memorijski propusni opseg. Rezultati skupa testova se kombinuju da bi se proizveo jedan GeekBench rezultat. Također ćemo izložiti četiri osnovna skupa testova (Integer Performance, Floating-Point Performance, Memory Performance i Stream Performance), tako da možemo vidjeti prednosti i slabosti svakog virtualnog okruženja.
GeekBench koristi referentni sistem baziran na PowerMac G5 na 1,6 GHz. GeekBench rezultati za referentne sisteme su normalizovani na 1000. Svaki rezultat veći od 1000 označava računar koji radi bolje od referentnog sistema.
Pošto su rezultati oba benchmark paketa donekle apstraktni, počećemo sa definisanjem referentnog sistema. U ovom slučaju, referentni sistem će biti host Mac koji se koristi za pokretanje tri virtuelna okruženja (Parallels Desktop za Mac, VMWare Fusion i Sun Virtual Box). Pokrenut ćemo oba benchmark paketa na referentnom sistemu i koristiti tu cifru da uporedimo koliko dobro virtuelna okruženja rade.
Sva testiranja će se izvršiti nakon novog pokretanja i host sistema i virtuelnog okruženja. I domaćin i virtuelno okruženje će imati onemogućene sve anti-malware i antivirusne aplikacije. Sva virtuelna okruženja će se pokretati unutar standardnog prozora OS X pošto je ovo najčešći metod koji se koristi u sva tri okruženja. U slučaju virtuelnih okruženja, neće se pokretati nijedna korisnička aplikacija osim benčmarka. Na host sistemu, osim virtuelnog okruženja, neće biti pokrenuta nijedna korisnička aplikacija osim uređivača teksta za vođenje bilješki prije i nakon testiranja, ali nikada tokom stvarnog procesa testiranja.
Rezultati benchmark-a za host sistem Mac Pro
Tom Nelson. Lifewire, 2016.
Sistem koji će ugostiti tri virtuelna okruženja (Parallels Desktop za Mac, VMWare Fusion i Sun VirtualBox) je izdanje Mac Pro iz 2006:
Mac Pro (2006)
- Dva dvojezgrena 5160 Zeon procesora (ukupno 4 jezgra) @ 3,00 GHz
- 4 MB po jezgru L2 keš memorije (ukupno 16 MB)
- 6 GB RAM-a koji se sastoji od četiri modula od 1 GB i četiri modula od 512 MB. Svi moduli su upareni parovi.
- A 1,33 GHz prednja sabirnica
- NVIDIA GeForce 7300 GT grafička kartica
- Dva čvrsta diska Samsung serije F1 od 500 GB. OS X i softver za virtuelizaciju nalaze se na pogonu za pokretanje; gostujući OS su pohranjeni na drugom disku. Svaki disk ima svoj nezavisni SATA 2 kanal.
Rezultati GeekBench i CineBench testova na Mac Pro domaćinu trebali bi pružiti praktičnu gornju granicu performansi koju bismo trebali vidjeti u bilo kojem virtuelnom okruženju. S obzirom na to, želimo istaći da je moguće da virtualno okruženje premaši performanse hosta u bilo kojem pojedinačnom testu. Virtuelno okruženje može biti u mogućnosti da pristupi osnovnom hardveru i zaobiđe neke od OS X slojeva OS-a. Takođe je moguće da paketi testova za benchmark budu prevareni sistemom keširanja performansi ugrađenim u virtuelna okruženja i daju rezultate koji su daleko iznad potencijalnih performansi.
Referentni rezultati
GeekBench 2.1.4
- GeekBench rezultat: 6830
- Cijeli broj: 6799
- pokretni zarez: 10786
- Memorija: 2349
- Stream: 2057
CineBench R10
- Rendering, Single CPU: 3248
- Rendering, 4 CPU: 10470
- Efektivno ubrzanje sa jednog na sve procesore: 3.22
- Shading (OpenGL): 3249
Detaljni rezultati benchmark testova dostupni su u galeriji Virtualization Benchmark Test galerije.
Benchmark rezultati za Parallels Desktop za Mac 5
Tom Nelson. Lifewire, 2016.
Koristili smo najnoviju verziju Parallels-a (Parallels Desktop za Mac 5.0). Instalirali smo nove kopije Parallels, Windows XP SP3 i Windows 7. Izabrali smo ova dva Windows OS za testiranje jer mislimo da Windows XP predstavlja veliku većinu trenutnih Windows instalacija na OS X i da će u budućnosti Windows 7 biti najčešći gostujući OS koji radi na Macu.
Prije početka testiranja provjerili smo i instalirali sva dostupna ažuriranja i za virtuelno okruženje i za dva Windows operativna sistema. Kada je sve bilo ažurirano, konfigurisali smo Windows virtuelne mašine da koriste jedan procesor i 1 GB memorije. Ugasili smo Parallels i onemogućili Time Machine i sve stavke za pokretanje na Mac Pro-u koje nisu potrebne za testiranje. Zatim smo ponovo pokrenuli Mac Pro, pokrenuli Parallels, pokrenuli jedno od Windows okruženja i izvršili dva seta benchmark testova. Kada su testovi završeni, kopirali smo rezultate na Mac za kasniju upotrebu.
Potom smo ponovili ponovno pokretanje i pokretanje Parallels-a za benchmark testove drugog Windows OS-a.
Konačno, ponovili smo gornju sekvencu sa gostujućim OS postavljenim da koristi 2, a zatim 4 CPU-a.
Referentni rezultati
GeekBench 2.1.4
- Windows XP SP3 (1, 2, 4 CPU): 2185, 3072, 4377
- Windows 7 (1, 2, 4 CPU): 2223, 2980, 4560
CineBench R10
- Windows XP SP3
- Rendering (1, 2, 4 CPU): 2724, 5441, 9644
- Shading (OpenGL) (1, 2, 4 CPU): 1317, 1317, 1320
CineBench R10
- Windows 7
- Rendering (1, 2, 4 CPU): 2835, 5389, 9508
- Shading (OpenGL) (1, 2, 4 CPU): 1335, 1333, 1375
Parallels Desktop za Mac 5.0 je završio sve benchmark testove. GeekBench je uočio samo male razlike u performansama između Windows XP i Windows 7, što smo i očekivali. GeekBench se koncentriše na procesor za testiranje i performanse memorije, tako da očekujemo da će to biti dobar pokazatelj osnovnih performansi virtuelnog okruženja i koliko dobro čini hardver domaćina Mac Pro-a dostupnim gostujućim operativnim sistemima.
CineBenchov test renderiranja je također pokazao konzistentnost u dva Windows OS. Još jednom, ovo je za očekivati jer test renderovanja u velikoj meri koristi procesore i memorijski propusni opseg kao što vide gostujući OS. Test senčenja je dobar pokazatelj koliko dobro je svako virtuelno okruženje implementiralo svoj video drajver. Za razliku od ostatka Mac-ovog hardvera, grafička kartica nije dostupna direktno virtuelnim okruženjima. To je zato što grafička kartica mora kontinuirano voditi računa o prikazu za okruženje domaćina i ne može se preusmjeriti da prikaže samo okruženje za goste. Ovo je tačno čak i ako virtuelno okruženje nudi opciju prikaza preko celog ekrana.
Detaljni rezultati benchmark testova dostupni su u galeriji Virtualization Benchmark Test galerije.
Benchmark rezultati za VMWare Fusion 3.0
Tom Nelson. Lifewire, 2016.
Koristili smo najnoviju verziju VMWare Fusion (Fusion 3.0). Instalirali smo nove kopije Fusion, Windows XP SP3 i Windows 7. Odabrali smo ova dva Windows OS za testiranje jer mislimo da Windows XP predstavlja veliku većinu trenutnih Windows instalacija na OS X i da će u budućnosti Windows 7 biti najčešći gostujući OS koji radi na Macu.
Prije početka testiranja provjerili smo i instalirali sva dostupna ažuriranja i za virtuelno okruženje i za dva Windows operativna sistema. Kada je sve bilo ažurirano, konfigurisali smo Windows virtuelne mašine da koriste jedan procesor i 1 GB memorije. Ugasili smo Fusion i onemogućili Time Machine i sve stavke za pokretanje na Mac Pro-u koje nisu potrebne za testiranje. Zatim smo ponovo pokrenuli Mac Pro, pokrenuli Fusion, pokrenuli jedno od Windows okruženja i izvršili dva seta benchmark testova. Kada su testovi završeni, kopirali smo rezultate na Mac za kasniju upotrebu.
Potom smo ponovili ponovno pokretanje i pokretanje Fusion-a za benchmark testove drugog Windows OS-a.
Konačno, ponovili smo gornju sekvencu sa gostujućim OS postavljenim da koristi 2, a zatim 4 CPU-a.
Referentni rezultati
GeekBench 2.1.4
- Windows XP SP3 (1, 2, 4 CPU):, 3252, 4406
- Windows 7 (1, 2, 4 CPU): 2388, 3174, 4679
CineBench R10
- Windows XP SP3
- Rendering (1, 2, 4 CPU): 2825, 5449, 9941
- Shading (OpenGL) (1, 2, 4 CPU): 821, 821, 827
CineBench R10
- Windows 7
- Rendering (1, 2, 4 CPU): 2843, 5408, 9657
- Shading (OpenGL) (1, 2, 4 CPU): 130, 130, 124
Naišli smo na probleme sa Fusionom i benchmark testovima. U slučaju Windows XP-a sa jednim procesorom, GeekBench je prijavio performanse memorijskog toka po stopi boljoj od 25 puta većoj od brzine glavnog Mac Pro-a. Ovaj neobičan rezultat memorije podigao je GeekBench rezultat za jednu CPU verziju Windows XP-a na 8148. Nakon što smo mnogo puta ponovili test i dobili slične rezultate, odlučili smo da označimo test kao nevažeći i da ga smatramo problemom interakcije između benchmark testa, Fusion i Windows XP. Najbolje što možemo reći, za konfiguraciju jednog CPU-a, Fusion nije prijavio ispravnu hardversku konfiguraciju GeekBench aplikaciji. Međutim, GeekBench i Windows XP su radili besprijekorno sa dva ili više odabranih CPU-a.
Imali smo problem i sa Fusionom, Windows 7 i CineBench. Kada smo pokrenuli CineBench pod Windowsom 7, prijavio je generičku video karticu kao jedini dostupni grafički hardver. Iako je generička grafička kartica mogla pokrenuti OpenGL, to je činila velikom brzinom. Ovo je možda bio rezultat toga što je domaćin Mac Pro imao staru NVIDIA GeForce 7300 grafičku karticu. Sistemski zahtjevi Fusiona sugeriraju moderniju grafičku karticu. Zanimljivo je, međutim, da je pod Windowsom XP, CineBench test senčenja radio bez ikakvih problema.
Osim dvije gore spomenute hirovite, performanse Fusiona bile su jednake onome što smo očekivali od dobro dizajniranog virtuelnog okruženja.
Detaljni rezultati benchmark testova dostupni su u galeriji Virtualization Benchmark Test galerije.
Benchmark rezultati za Sun VirtualBox
Tom Nelson. Lifewire, 2016.
Koristili smo najnoviju verziju Sun VirtualBox-a (VirtualBox 3.0). Instalirali smo nove kopije VirtualBoxa, Windows XP SP3 i Windows 7. Izabrali smo ova dva Windows OS za testiranje jer mislimo da Windows XP predstavlja veliku većinu trenutnih Windows instalacija na OS X i da će u budućnosti Windows 7 biti najčešći gostujući OS koji radi na Macu.
Prije početka testiranja provjerili smo i instalirali sva dostupna ažuriranja i za virtuelno okruženje i za dva Windows operativna sistema. Kada je sve bilo ažurirano, konfigurisali smo Windows virtuelne mašine da koriste jedan procesor i 1 GB memorije. Ugasili smo VirtualBox i onemogućili Time Machine i sve stavke za pokretanje na Mac Pro-u koje nisu potrebne za testiranje. Zatim smo ponovo pokrenuli Mac Pro, pokrenuli VirtualBox, pokrenuli jedno od Windows okruženja i izvršili dva seta benchmark testova. Kada su testovi završeni, kopirali smo rezultate na Mac za kasniju upotrebu.
Potom smo ponovili ponovno pokretanje i pokretanje Fusion-a za benchmark testove drugog Windows OS-a.
Konačno, ponovili smo gornju sekvencu sa gostujućim OS postavljenim da koristi 2, a zatim 4 CPU-a.
Referentni rezultati
GeekBench 2.1.4
- Windows XP SP3 (1, 2, 4 CPU): 2345,,
- Windows 7 (1, 2, 4 CPU): 2255, 2936, 3926
CineBench R10
- Windows XP SP3
- Rendering (1, 2, 4 CPU): 7001,,
- Shading (OpenGL) (1, 2, 4 CPU): 1025,,
CineBench R10
- Windows 7
- Rendering (1, 2, 4 CPU): 2570, 6863, 13344
- Shading (OpenGL) (1, 2, 4 CPU): 711, 710, 1034
Sun VirtualBox i naše bench test aplikacije su naišle na problem sa Windows XP. Konkretno, i GeekBench i CineBench nisu mogli vidjeti više od jednog CPU-a, bez obzira na to kako smo konfigurirali gostujući OS.
Kada smo testirali Windows 7 sa GeekBench-om, primijetili smo da je korištenje više procesora neadekvatno, što je rezultiralo najnižim rezultatima za 2 i 4 CPU konfiguracije. Činilo se da su performanse jednog procesora jednake ostalim virtuelnim okruženjima.
CineBench takođe nije mogao da vidi više od jednog procesora kada je pokrenuo Windows XP. Takođe, test renderovanja za verziju Windows XP sa jednim procesorom dao je jedan od najbržih rezultata, nadmašivši čak i sam Mac Pro. Pokušali smo ponoviti test nekoliko puta; svi rezultati su bili u istom rasponu. Mislimo da je sigurno rezultate renderiranja Windows XP-a sa jednim CPU-om pripisati problemu s VirtualBox-om i načinom na koji koristi CPU-ove.
Takođe smo vidjeli čudan skok u rezultatima renderiranja za 2 i 4 CPU testa sa Windows 7 i u svakom slučaju, renderiranje se više nego udvostručilo pri prelasku sa 1 na 2 CPU-a i sa 2 na 4 CPU-a. Ova vrsta povećanja performansi je malo verovatna, i još jednom ćemo to pripisati VirtualBox-ovoj implementaciji podrške za više procesora.
Uz sve probleme sa VirtualBox benchmark testiranjem, jedini validni rezultati testa mogu biti oni za jedan CPU pod Windows 7.
Detaljni rezultati benchmark testova dostupni su u galeriji Virtualization Benchmark Test galerije.
Rezultati
Sa obavljenim svim testovima, vrijeme je da se vratimo na naše originalno pitanje.
Da li tri glavna igrača u virtuelizaciji na Mac-u (Parallels Desktop za Mac, VMWare Fusion i Sun VirtualBox) ispunjavaju obećanje o skoro prirodnim performansama?
Odgovor je mješovita vreća. Nijedan od kandidata za virtuelizaciju u našim GeekBench testovima nije bio u stanju da se izmeri sa performansama glavnog Mac Pro-a. Najbolji rezultat zabilježio je Fusion, koji je uspio ostvariti skoro 68,5% učinka domaćina. Paralele su bile blizu sa 66,7%. Pozadi je bio VirtualBox, sa 57,4%.
Kada smo pogledali rezultate CineBench-a, koji koristi test iz stvarnog svijeta za renderiranje slika, bili su vrlo blizu rezultatu domaćina. Još jednom, Fusion je bio na vrhu testova renderiranja, postigavši 94,9% performansi domaćina. Uslijedile su paralele sa 92,1%. VirtualBox nije mogao pouzdano završiti test renderiranja, izbacivši ga iz konkurencije. U jednoj iteraciji testa renderiranja, VirtualBox je izvijestio da radi 127,4% bolje od hosta, dok u drugim nije mogao započeti ili završiti.
Test senčenja, koji pokazuje koliko dobro grafička kartica radi koristeći OpenGL, prošao je najgore od svih virtuelnih okruženja. Najbolji je bio Parallels, koji je dostigao 42,3% mogućnosti domaćina. VirtualBox je bio drugi sa 31.5%; Fusion je na trećem mjestu sa 25,4%.
Odabir ukupnog pobjednika je nešto što ćemo ostaviti krajnjem korisniku. Svaki proizvod ima svoje pluse i minuse, a u mnogim slučajevima, referentni brojevi su toliko blizu da bi ponavljanje testova moglo promijeniti poredak.
Ono što rezultati benchmark testova pokazuju je da je univerzalno, mogućnost korištenja grafičke kartice ono što sprečava virtuelno okruženje da bude potpuna zamjena za namjenski PC. Imajući to u vidu, modernija grafička kartica od one koju imamo ovdje mogla bi proizvesti veće performanse u testu senčenja, posebno za Fusion, čiji programer predlaže grafičke kartice viših performansi za najbolje rezultate.
Primijetit ćete da su neke kombinacije testova (virtuelno okruženje, Windows verzija i benchmark test) prikazale probleme, bilo nerealne rezultate ili neuspjeh u završetku testa. Ove vrste rezultata ne bi trebalo da se koriste kao indikatori problema sa virtuelnim okruženjem. Benchmark testovi su neobične aplikacije koje se pokušavaju pokrenuti u virtuelnom okruženju. Dizajnirani su za mjerenje performansi fizičkih uređaja, kojima virtuelno okruženje možda neće dozvoliti pristup. Ovo nije kvar virtuelnog okruženja, a u stvarnoj upotrebi nismo iskusili probleme sa velikom većinom Windows aplikacija koje rade pod virtuelnim sistemom.
Sva virtuelna okruženja koja smo testirali (Parallels Desktop za Mac 5.0, VMWare Fusion 3.0 i Sun VirtualBox 3.0) pružaju odlične performanse i stabilnost u svakodnevnoj upotrebi i trebalo bi da budu u mogućnosti da služe kao vaše primarno Windows okruženje većinu dana -dnevne aplikacije.