UNE NOUVELLE VERSION D'INFOBIDOUILLE EST EN LIGNE CLIQUEZ-ICI POUR LA VISITER

Comparatif des logiciels de virtualisation

Introduction

Longtemps réservée aux professionnels, la virtualisation semble aujourd'hui conquérir petit à petit le grand public, en étant une solution de plus en plus utilisée en remplacement du classique multi-boot. La virtualisation est en effet une solution bien plus confortable, puisqu'elle permet de s'affranchir des redémarrages de la machine. Par exemple, un webmaster travaillant sous Windows XP pourra aisément tester son site avec une ancienne version d'Internet Explorer sous Windows 98 ou 2000 sans avoir à quitter son environnement de développement à chaque test. De plus, l'arrivée des processeurs Intel dans les ordinateurs Apple a permis de populariser un peu la virtualisation auprès du grand public grâce à Parallels Desktop, qui permet aux utilisateurs de Mac Intel d'exécuter un environnement Windows directement depuis Mac OS, sans être limité par les contraintes de Bootcamp et depuis que les cœurs se multiplient dans nos CPU, les fabricants avancent de plus en plus souvent l'argument de la virtualisation pour justifier l'utilisation de tels CPU.

Si la virtualisation était encore relativement inconfortable à utiliser il y a quelques années à cause du partage des ressources entre la machine virtuelle et la machine native, la montée en puissance des processeur a permis petit à petit de gagner en réactivité et l'arrivée des processeur dual core permet aujourd'hui à la virtualisation d'exprimer tout son potentiel : la majorité des logiciels ne tirant pas encore pleinement parti de ce type de processeurs, les ressources laissées à disposition de la machine virtuelle sont bien plus importantes et la virtualisation permet ainsi un meilleur taux d'occupation des ressources, même avec des logiciels non parallélisables.

Dans cet article, nous avons testé les performances obtenues sous Windows XP dans une machine virtuelle gérée par les principaux logiciels de virtualisations du marché : VMWare, le leader, Parallels Workstation, la version PC du célèbre Parallels Desktop, Virtual PC 2004, la solution de chez Microsoft, et enfin, le petit dernier, Virtual Box, qui et passé dans le monde de l'Open Source il y a peu de temps.

Configuration de test

La configuration utilisée pour les tests est la suivante :

  • processeur : AMD Athlon X2 3800+ (2.0 GHz, 10x200 MHz)
  • carte mère : Asus A8N-SLI Premium (nVidia nForce 4 SLI)
  • mémoire : 2x1 Go DDR G.skill PC4000 HZ (500 MHz 3-4-4-8) limitée à 400 MHz 3-3-3-6
  • alimentation : Antec True Power 480W
  • disque dur : Hitachi 7K80 80 Go SATA2
  • carte graphique : Gainward 7300GT
  • lecteur optique : Samsung DVD 16x

Les mesures de performances en natif ont été effectuées sous Windows XP SP2, avec les pilotes nVidia Forceware en version 91.47 en 1024x768.

Les machines virtuelles utilisent la même version de Windows XP, installée à partir du même CD, en 1024x768 (avec l'hôte en 1280x960). Les résultats sont tous exprimés en pourcentage par rapport au score de référence établi en natif.

Les mesures "ISO" signifient que l'instance du logiciel de virtualisation a été isolés sur un seul cœur de la machine hôte.

VMWare Workstation 5.5

VMWare Workstation est présent dans le domaine de la virtualisation depuis de nombreuses années et est actuellement le leader de ce marché. Disponible sous Windows, sous Linux et bientôt sous Mac OS X, il est l'un des plus complets, mais aussi l'un des plus onéreux (189$ en téléchargement, 199$ sur CD). Une version gratuite existe également sous le nom VMWare Player, mais elle ne permet pas la création de machines virtuelles.

La liste des OS officiellement supportés dans la machine virtuelle est relativement impressionnante : Windows (de Windows 3.1 à Windows Vista (support expérimental) en passant par les différentes déclinaisons serveur, en 32 bits et en 64 bits), la plupart des distributions Linux (là encore, en 32 bits et en 64 bits), Novel NetWare 5 et 6, Solaris 9 et 10 (32/64 bits), DOS et FreeBSD (32/64 bits). Cette liste n'est bien entendu pas restrictives, et de nombreux OS non listés peuvent fonctionner, à condition d'exister en version x86/x86-64 (en particulier, de nombreux forums expliquent comment installer Mac OS X sous VMWare, bien que cette manipulation soit illégale). L'interface est relativement ergonomique, en particulier lors de l'utilisation de plusieurs machines virtuelles en simultané (une seule fenêtre VMWare avec un onglet par machine virtuelle). En mode plein écran, la résolution de l'écran s'adapte à celle de la machine virtuelle.

Au niveau matériel, les machines émulées peuvent comporter 1 ou 2 processeurs (tous les autres logiciels de notre comparatif sont limités à un seul processeur), de 4 à 3600 Mo de RAM, un ou plusieurs disques durs (IDE ou SCSI, en utilisant soit un fichier image soit un disque physique), un ou plusieurs lecteur DVD (en utilisant soit un lecteur physique soit une image ISO), une ou plusieurs cartes réseau (connecté directement au même réseau que l'hôte, ou connectée en NAT via l'hôte, ou dans un réseau privé partagé avec l'hôte ou encore dans un réseau privé partagé avec d'autres machines virtuelles), un contrôleur USB (permettant d'utiliser les ports USB de l'hôte), une carte son, un ou plusieurs ports parallèle ou série (utilisant les ports physiques ou redirigés vers un fichier).

La matériel émulé est relativement standard (périphériques système Intel, carte réseau AMD PCNet, carte son Creative), ce qui facilite la compatibilité avec les OS anciens. On peut toutefois regretter que la carte son émulée ne dispose pas de drivers compatibles avec les versions de Windows antérieures à Windows 98 (les anciennes versions de VMWare émulaient une SoundBlaster ISA). La carte émulée peut supporter la 3D sous DirectX 8.0, mais ce support n'étant pas encore officiel, nous n'avons pas activé cette fonction pour nos tests.

Sur le plan des performances, VMWare est globalement la meilleure solution de ce comparatif, en particulier grâce à de bonnes performances graphiques. Globalement, en mode bi-processeur, VMWare atteint 78% des performances de la machine hôte, et 89% en excluant les tests graphiques.

En mode mono-processeur, les performances sont bien évidement moins bonnes, mais restent légèrement au dessus de la barre des 60% et frôlent les 70% en excluant les tests graphiques. Dans ce mode, la mesure du temps était perturbée par l'utilisation d'un processeur dual core sur la machine hôte. Les mesures ont donc été effectuées en isolant VMWare sur un seul cœur. Les tests chronométrables à la main (SuperPi et WinRAR) ont également été effectués sans isolation. Nous avons alors constaté un léger ralentissement (2%).

VMWare Workstation : performances

Parallels Workstation 2.2

Moins connu que VMWare, Parallels Workstation est la version PC de Parallels Desktop, qui a acquis une certaines notoriété depuis l'arrivée des Mac Intel. Alors que Parallels Desktop ne fonctionne que sous Mac OS X, Parallels Workstation est destiné aux plateformes PC sous Windows et sous Linux. Beaucoup moins onéreux que VMWare (49.99$ en téléchargement, 62.49$ sur CD), il ne démérite pas pour autant.

La liste des OS supportés est grosso modo la même que sous VMWare, avec OS/2 à la place de Novell NetWare et un support complet de Windows Vista. L'interface du logiciel est un peu plus moderne et ergonomique que celle de VMWare, mais il manque la possibilité de redimensionner la fenêtre, ce qui empêche d'utiliser dans la machine virtuelle une résolution supérieure à celle de la machine hôte (la fenêtre de Paralles Desktop est alors plus grande que la zone d'affichage, alors que sous VMWare on obtient des barres de défilement) et lors de l'utilisation de plusieurs machines virtuelles, il faudra ouvrir une fenêtre différente pour chacune d'entre elles. Lors du passage en mode plein écran, la machine virtuelle bascule automatiquement dans la résolution de l'hôte, ce qui peut parfois être un peu gênant.

Du côté du matériel émulé, Parallels Workstation est moins complet que VMWare du côté du réseau (uniquement réseau privé ou utilisation du réseau de l'hôte), des disques durs (pas d'émulation SCSI) et de la mémoire vive (limitée à 1500 Mo). Du côté de la carte graphique par contre, Parallels propose une fonctionnalité intéressante qui ne retrouve pas chez la concurrence, la possibilité de définir des résolutions d'affichage personnalisées. Comme sous VMWare, on retrouve la possibilité de gérer des ports USB, série et parallèle.

Le matériel émulé est globalement plus récent que sous VMWare, ce qui pourrait être préjudiciable pour l'utilisation d'anciens OS. En particulier, on pourra regretter l'émulation d'une carte réseau non standard, alors que l'AMD PCNet de VMWare est un modèle très répandu et disposant de drivers pour une large gamme d'OS.

Les performances sont légèrement inférieures à celles de VMWare mais restent tout a fait honorables (56% du natif et 66% en retirant les tests graphiques). Tout comme avec VMWare, les mesures ont dû être effectuées en isolant l'application sur un seul coeur. Les tests chronométrables à la main (SuperPi et WinRAR) ont également été effectués sans isolation, et nous avons là aussi constaté un léger ralentissement, mais bien moins que sous VMWare (0.5%).

Parallels Workstation : performances

VirtualBox 1.3.2

Edité par InnoTek, VirtualBox est sorti récemment de l'anonymat en devenant gratuit et open-source, ce qui en fait une solution particulièrement intéressante pour les particuliers qui veulent utiliser la virtualisation pour faire tourner des logiciels un peu anciens sans avoir à payer une licence supplémentaire. Tout comme VMWare et Parallels, il fonctionne sous Windows et sous Linux.

Globalement, il est plus complet que VMWare et Parallels Desktop au niveau des OS supportés (DOS, tous les Windows, OS/2, Linux, FreeBSD, OpenBSD, NetBSD, NetWare, Solaris et L4), mais il ne propose par contre pas d'optimisation spécifiques aux différentes distributions Linux. L'interface du logiciel présente une fenêtre contenant la liste des machines virtuelles et chaque machine lancée dispose de sa propre fenêtre. De même que dans VMWare, la taille de la fenêtre est indépendante de la résolution de la machine virtuelle, ce qui permet l'utilisation de résolutions supérieures à celles de l'hôte. En mode plein écran, la résolution de l'écran reste celle de l'hôte, et la machine virtuelle est affichée avec des bandes noires si sa résolution est inférieure ou en mode scan si sa résolution est supérieure (seule une partie de l'image est affichée, et l'affichage se déplace pour suivre la souris).

La mémoire de la machine virtuelle est limitée à 1200 Mo et la mémoire vidéo peut être réglée de 1 à 32 Mo. Les disques durs sont uniquement en IDE. La gestion des cartes réseau est un peu plus complète que celle de Parallels (support du NAT), mais la création d'un pont avec le réseau local de l'hôte nécessite de passer par des lignes de commande. Au niveau de l'USB, VirtualBox offre la possibilité de filtrer les périphériques qui seront attachés à la machine virtuelle. La machine virtuelle ne peut par contre pas disposer de ports série et parallèle.

Le matériel émulé est relativement ancien et devrait donc bénéficier d'une large compatibilité avec les OS moins récents. Pour le réseau, on retrouve la même carte AMD PCNet que sous VMWare.

Les performances se situent entre celles de VMWare et celles de Parallels (60% avec les tests graphiques, 68% sans), ce qui est plutôt intéressant compte tenu de la gratuité de VirtualBox. Les mesures ont pu être effectuées sans isoler l'application sur un seul coeur (à l'inverse, avec isolation, la base de temps était incorrecte). Les tests chronométrables à la main (SuperPi et WinRAR) ont également été effectués avec isolation, et, comme avec VMWare et Parallels, l'isolation a apporté un léger gain de performances (1.5%). VirtualBox est également le plus rapide à démarrer Windows XP : à peine 13 secondes, contre une trentaine pour VMWare et Parallels et plus de 40 pour VirtualPC.

VirtualBox : performances

Virtual PC 2004 SP1

Initialement destiné à faire tourner des systèmes PC sur les ordinateurs Apple à base de PowerPC, Virtual PC a été porté sous Windows suite au rachat de son éditeur par Microsoft. Depuis quelques temps, Virtual PC est devenu gratuit.

Microsoft oblige, les OS supportés officiellement se limitent aux OS Microsoft, même si en pratique on peut très bien installer un Linux. L'interface est similaire à celle de VirtualBox (une fenêtre générale et une fenêtre par machine virtuelle). La taille de la fenêtre est gérée de la même façon que sous VMWare. Le mode plein écran utilise la même résolution que la machine virtuelle, mais est par contre limité à la résolution de la machine hôte.

La mémoire de la machine virtuelle est limitée à 1847 Mo. Les disques durs sont uniquement en IDE mais proposent une fonction de retour arrière (après arrêt de la machine virtuelle, les modifications effectuées durant la session peuvent être annulées). La gestion réseau propose les mêmes possibilités que VirtualBox, mais tout se fait via l'interface graphique. L'USB n'est pas supportés, mais on retrouve par contre les ports série et parallèle.

Le matériel émulé est quasiment identique à celui de VMWare, à l'exception de la carte réseau (carte Intel PCI) et de la carte son (SoundBlaster 16, bien mieux adaptés aux anciens logiciels DOS).

Les performances sont en net retrait (50% avec les tests graphiques, 60% sans) mais par contre la base de temps est géré correctement aussi bien avec que sans isolation. Le gain apporté par l'isolation est de l'ordre d'1%.

Virtual PC 2004 : performances

Conclusion

Indépendamment du prix, VMWare est clairement la meilleure solution. La possibilité d'émuler une machine multiprocesseur lui confère en effet des performances de tout premier ordre et les fonctionnalités offertes sont parmi les plus complètes. L'arrivée prochaine du support officiel de la 3D devrait encore intensifier cette domination. Dommage que la licence soit aussi chère !

Pour les budgets plus modestes, nous recommandons VirtualBox qui n'a pas à rougir face à VMWare sur le plan des performances (en mono-processeur) malgré sa gratuité et dont les fonctionnalités devraient largement suffire aux utilisateurs grand public. De plus, sa publication sous licence GPL devrait permettre de le voir évoluer plus rapidement que ses concurrents. Parallels constitue également une bonne solution, mais l'investissement ne nous semble pas vraiment justifié par rapport à VirtualBox, à la fois plus rapide et plus complet.

Enfin, grâce à son émulation d'une carte son SoundBlaster 16, Virtual PC est le meilleur choix si vous voulez utiliser un OS antérieur à Windows 98 avec des applications ayant besoin d'une carte son. Ses performances nettement en retrait en font par contre un logiciel à éviter pour l'utilisation d'applications plus récentes. Une nouvelle version de Virtual PC, estampillée 2007 est disponible depuis peu et toujours gratuite. Nous mettrons prochainement cet article à jour avec les résultats de cette version.

Pour finir, voici un graphique global regroupant les performances de toutes les logiciels testés :

Performances des logiciels de virtualisation