Introduction à l’analyse comparative de la virtualisation
Les environnements virtualisés sont devenus un produit phare pour les utilisateurs de Mac depuis qu’Apple a commencé à utiliser des processeurs Intel dans ses ordinateurs. Même avant l’arrivée d’Intel, un logiciel d’émulation permettant aux utilisateurs de Mac d’exécuter Windows et Linux était disponible.
Mais l’émulation est lente, utilisant une couche d’abstraction pour convertir le code de programmation x86 en code utilisé par l’architecture PowerPC des premiers Mac. Cette couche d’abstraction traduit non seulement le type de CPU, mais également tous les composants matériels. Essentiellement, la couche d’abstraction doit créer les équivalents logiciels des cartes vidéo, des disques durs, des ports série, etc. Le résultat est un environnement d’émulation qui peut exécuter Windows ou Linux, mais dont les performances et les systèmes d’exploitation peuvent être sévèrement limités.
Avec l’avènement de la décision d’Apple d’utiliser des processeurs Intel, tout besoin d’émulation a été balayé. À sa place se trouve la possibilité d’exécuter d’autres systèmes d’exploitation directement sur le Mac Intel. Si vous souhaitez exécuter Windows directement sur votre Mac en option au démarrage, vous pouvez utiliser Boot Camp, une application fournie par Apple comme moyen pratique d’installer Windows dans un environnement multi-démarrage.
Mais de nombreux utilisateurs ont besoin d’un moyen d’exécuter Mac OS et un deuxième système d’exploitation en même temps. Parallels, puis VMWare et Sun, ont apporté cette capacité au Mac grâce à la technologie de virtualisation. La virtualisation est conceptuellement similaire à l’émulation, mais comme les Mac à processeur Intel utilisent le même matériel qu’un PC standard, il n’est pas nécessaire de créer une couche d’abstraction matérielle dans le logiciel. Au lieu de cela, les logiciels Windows ou Linux peuvent s’exécuter directement sur le matériel, produisant un système d’exploitation invité presque aussi rapide que l’exécution d’un système d’exploitation invité sur un PC.
C’est la question à laquelle notre benchmark tente de répondre. Les trois principaux acteurs de la virtualisation sur Mac – Parallels Desktop pour Mac, VMWare Fusion et Sun VirtualBox – tiennent-ils la promesse de performances quasi naturelles ?
Nous disons « proche du naturel » car tous les environnements virtualisés ont une surcharge inévitable. Étant donné que l’environnement virtuel s’exécute en même temps que le système d’exploitation « intégré » (OS X, maintenant macOS), les ressources matérielles doivent être partagées. De plus, OS X doit fournir certains services pour l’environnement virtualisé, tels que Windows et les services de base. La combinaison de ces services et du partage des ressources tend à limiter l’efficacité des systèmes d’exploitation virtualisés.
Pour répondre à cette question, nous effectuerons des tests de performance pour voir comment les trois principaux environnements de virtualisation fonctionnent lors de l’exécution de Windows.
méthode de test
GeekBench 2.1.4 et CineBench R10 sont les applications de référence que nous utiliserons dans nos tests.
Tom Nelson. Ligne de vie, 2016.
Nous utiliserons deux suites d’analyse comparative multiplateformes différentes et populaires. Le premier est CineBench 10, qui est un test réel du processeur d’un ordinateur et de la capacité de sa carte graphique à restituer des images. Le premier test utilise le processeur pour restituer des images photoréalistes, en utilisant des calculs gourmands en ressources processeur pour restituer les réflexions, les occultations ambiantes, l’éclairage de zone, les ombres, etc. Le test est effectué à l’aide d’un seul processeur ou cœur, puis répété à l’aide de tous les processeurs et cœurs disponibles. Les résultats donnent une cote de performance de référence pour un ordinateur utilisant un seul processeur, des cotes pour tous les processeurs et cœurs, et une indication du degré d’utilisation de plusieurs cœurs ou processeurs.
Le deuxième test CineBench utilise OpenGL pour évaluer les performances de la carte graphique d’un ordinateur pour restituer une scène 3D lorsque la caméra se déplace dans la scène. Ce test détermine la vitesse à laquelle la carte graphique peut fonctionner tout en rendant la scène avec précision.
La deuxième suite de tests est GeekBench 2.1.4, qui teste les performances du processeur en nombres entiers et en virgule flottante, teste la mémoire à l’aide d’un simple test de performances en lecture/écriture et effectue des tests de streaming qui mesurent la bande passante mémoire soutenue. Les résultats de cet ensemble de tests sont combinés pour produire un score GeekBench. Nous décomposerons également quatre ensembles de tests de base (performances en nombre entier, performances en virgule flottante, performances en mémoire et performances en streaming) afin que nous puissions voir les forces et les faiblesses de chaque environnement virtuel.
GeekBench utilise un système de référence basé sur le PowerMac G5 à 1,6 GHz. Le score GeekBench du système de référence est normalisé à 1000. Tout score supérieur à 1000 indique que l’ordinateur surpasse le système de référence.
Étant donné que les résultats des deux suites de benchmarks sont quelque peu abstraits, nous commencerons par définir un système de référence. Dans ce cas, le système de référence sera le Mac hôte utilisé pour exécuter les trois environnements virtuels (Parallels Desktop pour Mac, VMWare Fusion et Sun Virtual Box). Nous exécuterons les deux suites de test sur un système de référence et utiliserons le graphique pour comparer les performances de l’environnement virtuel.
Tous les tests seront effectués après un redémarrage du système hôte et de l’environnement virtuel. Toutes les applications anti-malware et antivirus seront désactivées pour l’hôte et l’environnement virtuel. Tous les environnements virtuels s’exécuteront dans une fenêtre OS X standard, car il s’agit de la méthode la plus courante dans les trois environnements. Dans le cas d’un environnement virtuel, aucune application utilisateur ne sera exécutée à l’exception des benchmarks. Sur le système hôte, aucune application utilisateur ne s’exécutera, autre qu’un environnement virtuel, à l’exception d’un éditeur de texte pour enregistrer avant et après le test, mais pas pendant le test réel.
Résultats de référence pour le système hôte Mac Pro
Les résultats de benchmark sur le système hôte peuvent servir de référence lors de la comparaison des performances des environnements virtuels.
Tom Nelson. Ligne de vie, 2016.
Le système qui hébergera les trois environnements virtuels (Parallels Desktop pour Mac, VMWare Fusion et Sun VirtualBox) est la version 2006 du Mac Pro :
Mac Pro (2006)
- Deux processeurs double cœur Zeon 5160 (4 cœurs au total) à 3,00 GHz
- 4 Mo de RAM cache L2 par cœur (16 Mo au total)
- 6 Go de RAM, composé de quatre modules de 1 Go et de quatre modules de 512 Mo. Tous les modules sont jumelés.
- Bus frontal 1,33 GHz
- Carte graphique NVIDIA GeForce 7300 GT
- Deux disques durs Samsung série F1 de 500 Go. OS X et le logiciel de virtualisation résident sur le disque de démarrage ; le système d’exploitation invité est stocké sur le second disque. Chaque disque possède son propre canal SATA 2 indépendant.
Les résultats des tests GeekBench et CineBench sur le Mac Pro hôte devraient fournir une limite supérieure aux performances réelles que nous devrions voir à partir de n’importe quel environnement virtuel. Cela dit, nous tenons à souligner qu’il est possible qu’un environnement virtuel dépasse les performances de l’hôte lors d’un seul test. Un environnement virtuel peut être en mesure d’accéder au matériel sous-jacent et de contourner certaines couches du système d’exploitation d’OS X. Les suites de benchmark peuvent également être trompées par le système de mise en cache des performances intégré à l’environnement virtuel et produire des résultats qui dépassent largement les performances potentielles.
score de référence
Geek Bench 2.1.4
- Note GeekBench : 6830
- Entier : 6799
- Flotteur : 10786
- RAM : 2349
- flux : 2057
CineBench R10
- Rendu, CPU unique : 3248
- Rendu, 4 CPU : 10470
- Accélération effective d’un seul processeur à tous les processeurs : 3,22
- Ombrage (OpenGL): 3249
Les résultats détaillés des benchmarks sont disponibles dans le référentiel Virtualization Benchmarks.
Résultats de benchmark pour Parallels Desktop pour Mac 5
Parallels Desktop pour Mac 5.0 a exécuté tous nos benchmarks sans problème.
Tom Nelson. Ligne de vie, 2016.
Nous avons utilisé la dernière version de Parallels (Parallels Desktop pour Mac 5.0). Nous avons installé une nouvelle copie de Parallels, Windows XP SP3 et Windows 7. Nous avons choisi ces deux systèmes d’exploitation Windows pour les tests car nous pensons que Windows XP représente la grande majorité de Windows actuellement installé sur OS X, et à l’avenir, Windows 7 sera le système d’exploitation invité le plus courant sur Mac.
Avant le début des tests, nous avons vérifié et installé toutes les mises à jour disponibles pour l’environnement virtuel et les deux systèmes d’exploitation Windows. Une fois que tout était à jour, nous avons configuré la machine virtuelle Windows pour utiliser un seul processeur et 1 Go de mémoire. Nous avons fermé Parallels et désactivé Time Machine et tous les éléments de démarrage qui n’étaient pas nécessaires pour les tests sur le Mac Pro. Ensuite, nous avons redémarré le Mac Pro, démarré Parallels, démarré l’un des environnements Windows et effectué deux séries de tests. Une fois le test terminé, nous copions les résultats sur le Mac pour référence future.
Nous avons ensuite redémarré et démarré Parallels à plusieurs reprises pour comparer un deuxième système d’exploitation Windows.
Enfin, nous répétons la séquence ci-dessus avec le système d’exploitation invité configuré pour utiliser 2 processeurs, puis 4 processeurs.
score de référence
Geek Bench 2.1.4
- Windows XP SP3 (1, 2, 4 processeurs) : 2185, 3072, 4377
- Windows 7 (1, 2, 4 processeurs) : 2223, 2980, 4560
CineBench R10
- Windows XP SP3
- Rendu (1, 2, 4 processeurs) : 2724, 5441, 9644
- Ombrage (OpenGL) (1, 2, 4 CPU) : 1317, 1317, 1320
CineBench R10
- Windows 7
- Rendu (1, 2, 4 processeurs) : 2835, 5389, 9508
- Ombrage (OpenGL) (1, 2, 4 CPU) : 1335, 1333, 1375
Parallels Desktop pour Mac 5.0 a terminé tous les benchmarks. GeekBench a trouvé peu de différence de performances entre Windows XP et Windows 7, ce à quoi nous nous attendions. GeekBench se concentre sur le test des performances du processeur et de la mémoire, nous nous attendons donc à ce qu’il soit un bon indicateur des performances sous-jacentes de l’environnement virtuel et de la manière dont il rend le matériel du Mac Pro hôte disponible pour le système d’exploitation invité.
Les tests de rendu de CineBench ont également montré une cohérence entre les deux systèmes d’exploitation Windows. Encore une fois, il faut s’y attendre, car les tests de rendu utilisent largement le processeur et la bande passante mémoire tels qu’ils sont vus par le système d’exploitation invité. Les tests d’ombrage sont un indicateur de la manière dont chaque environnement virtuel implémente son pilote vidéo. Contrairement à d’autres matériels Mac, les cartes graphiques ne peuvent pas être utilisées directement dans des environnements virtuels. En effet, la carte graphique doit continuer à prendre en charge l’affichage de l’environnement hôte et ne peut pas basculer uniquement vers l’environnement invité. Cela est vrai même si l’environnement virtuel offre une option d’affichage plein écran.
Les résultats détaillés des benchmarks sont disponibles dans le référentiel Virtualization Benchmarks.
Résultats de référence pour VMWare Fusion 3.0
Nous avons signalé les résultats du monoprocesseur de Windows XP comme invalides dans les tests de performance de Fusion, car les résultats de la mémoire et du streaming ont été 25 fois supérieurs à ceux de l’hôte.
Tom Nelson. Ligne de vie, 2016.
Nous avons utilisé la dernière version de VMWare Fusion (Fusion 3.0). Nous avons installé une nouvelle copie de Fusion, Windows XP SP3 et Windows 7. Nous avons choisi ces deux systèmes d’exploitation Windows pour les tests car nous pensons que Windows XP représente la grande majorité de Windows actuellement installé sur OS X, et à l’avenir, Windows 7 sera le système d’exploitation invité le plus courant sur Mac.
Avant le début des tests, nous avons vérifié et installé toutes les mises à jour disponibles pour l’environnement virtuel et…