Quelles fonctionnalités dois-je rechercher dans un ordinateur portable pour les charges de travail gourmandes en virtualisation?

19

Je fais l'essentiel de mon développement dans VMware Workstation (version 7 pour le moment). Malheureusement, sur mon ordinateur portable avec 4 Go de RAM, un OCZ Vertex 2 240 Go et un Core 2 Duo T9550 (2,66 GHz) fait les choses criminellement lentement quand il y a plus d'une machine virtuelle en cours d'exécution à la fois (ce qui étant donné que j'ai été faire du développement multi-serveur ces derniers temps est la plupart du temps).

Je sais qu'il y a des processeurs qui (par exemple) ont des fonctionnalités spécifiques pour accélérer la virtualisation, et je pense qu'il y a des fonctionnalités de chipset qui accélèrent l'accès à la mémoire spécifiquement pour les charges de travail de virtualisation, mais je ne suis positif sur aucun de ces derniers, et même s'ils existent, je ne suis pas sûr qu'ils soient disponibles sur les ordinateurs portables.

Billy ONeal
la source
1
Cela me semble être une recommandation d'achat.
Wuffers
4
@Mark: Non, les recommandations d'achat demandent un produit spécifique. Pour un exemple, voir superuser.com/questions/254068/… - demander ce qu'il faut rechercher n'est pas une recommandation d'achat, mais demander un produit spécifique l'est.
Billy ONeal
Question utile et intéressante avec quelque chose à apprendre sur les processeurs et la configuration pour la virtualisation, applicable à une gamme de produits et de fabricants. Mérite d'être conservé. +1
JRobert

Réponses:

9

La plupart des puces ont maintenant des extensions de virtualisation (Intel-VT ou AMD-V). D'après mon expérience personnelle (VirtualBox), je peux dire que certaines fonctionnalités - en particulier la pagination imbriquée - sont très utiles; La pagination imbriquée, par exemple, réduit sensiblement le temps de démarrage d'Ubuntu (de 45 secondes à 15 secondes).
(Edit: On dirait que la "pagination imbriquée" est aussi appelée "traduction d'adresse de deuxième niveau" ou "tables de pages étendues" [EPT].)

Cela dépend aussi de votre développement. J'ai essayé de compiler le code source de Chromium sur un Core i5 (pas de machine virtuelle du tout, sur un ordinateur réel), et 4 Gio de RAM n'étaient pas suffisants - 6 Gio étaient presque suffisants, mais j'avais encore besoin de ~ 1 Gio de fichier d'échange pour éviter de manquer de mémoire. (J'éteins normalement le fichier d'échange.) Faire cela sur une VM était clairement hors de question sur mon système, principalement à cause de la RAM (mais aussi du CPU). La RAM est donc également très importante, en particulier avec 2 VM, bien que cela dépende de ce que vous faites.

Une autre fonctionnalité qui pourrait aider est d'avoir un véritable ordinateur portable double cœur (ou plus), avec une VM exécutée sur un cœur et une autre sur un autre cœur. Je n'ai pas testé personnellement l'impact de cela, car je n'exécute généralement qu'une seule machine virtuelle à la fois.

Mehrdad
la source
Puis-je faire quelque chose pour tester si le processeur prend en charge la pagination imbriquée?
Billy ONeal
@Billy: Du haut de ma tête, je dirais télécharger VirtualBox et voir si la case à cocher est activée là-bas. :-) Je vais essayer de trouver une meilleure solution, car vous pouvez probablement la tester avec les cpuidinstructions.
Mehrdad
@Billy: Malheureusement, il semble que c'est un peu plus difficile de détecter l'EPT pour les processeurs Intel que les processeurs AMD; vous devez lire un registre spécifique au modèle. Il semble que créer une machine virtuelle dans VirtualBox, puis essayer de cocher la case Pagination imbriquée est probablement la plus simple. (Un rapide coup d'œil sur Wikipedia indique que les processeurs basés sur Nehalem et plus tard devraient le prendre en charge, cependant.)
Mehrdad
Connaissez-vous quelqu'un avec une puce compatible EPT qui peut vérifier quelque chose comme CPU-Z? (Je ne sais pas si CPU-Z le montre - aucun EPT n'est répertorié pour cette puce, bien qu'il montre VT-x)
Billy ONeal
@Billy: Non, CPU-Z ne l'affiche pas sur mon ordinateur portable. : \ Même la page d'Intel ne l'affiche pas. Bizarre ...
Mehrdad
12

Je pense que votre problème a plus à voir avec la RAM qu'avec le CPU. Si vous pouvez remplir plus de RAM dans votre ordinateur portable, cela ira un long chemin. Un bon hyperviseur peut assez bien diviser le temps processeur, mais la RAM doit être affectée à des machines virtuelles spécifiques. Après avoir maximisé la RAM, recherchez plus de cœurs (c'est-à-dire: un quad core cadencé plus lentement par opposition à un dual core cadencé plus rapidement), afin que chaque machine logique (y compris l'hôte) puisse avoir au moins un cœur dédié. Vous avez également demandé une technologie spécifique pour une meilleure prise en charge des VM. À l’exception de certains processeurs de classe netbook, toutle processeur / la carte mère sur le marché aujourd'hui prend en charge ces technologies, il y a donc de fortes chances que vous fassiez déjà tout ce que vous pouvez. Cependant, ces options sont parfois désactivées par défaut dans les paramètres BIOS / UEFI, pour y vérifier que vos fonctionnalités de virtualisation sont réellement activées. Enfin, l'exécution de plusieurs VM peut parfois créer beaucoup de pression d'E / S, donc une bonne configuration SSD ou RAID peut souvent aider considérablement.

Joel Coehoorn
la source
Core 2 Duo remonte à 2 générations ... peut-être que des choses ont été ajoutées depuis. Je suis sûr au moins qu'il ne prend pas en charge la fonction "tableaux de pages imbriqués".
Billy ONeal
@Billy - Core 2 incluait déjà des jeux d'instructions pour les optimisations de VM les plus grandes et les plus faciles (les fruits à faible accrochage, si vous voulez), et ce sont toujours des processeurs tout à fait capables. La RAM et plus de cœurs est vraiment le meilleur endroit pour dépenser votre temps et votre argent maintenant.
Joel Coehoorn
Les tables de pages imbriquées ont réduit mon démarrage d'un facteur 3 ... La RAM ne fait pas tout à fait cela. : \
Mehrdad
5

Intel possède une technologie de virtualisation appelée VT qui fournit un ensemble d'instructions spécialement conçu pour les machines virtuelles. L' Intel ARK a une liste de processeurs compatibles VT . Vous y trouverez de nombreux processeurs mobiles ainsi que des ordinateurs de bureau.

jcrawfordor
la source
Ma puce actuelle a VT et elle est toujours vraiment très lente. :(
Billy ONeal
2

Mon équipement actuel: Core i7 Quad Core de 2e génération, 8 Go de RAM. Le mien se trouve être MacBook Pro, mais je suis presque sûr que vous obtiendrez des résultats rapides indépendamment de la marque et du modèle spécifiques. L'autre jour, j'ai réussi à exécuter simultanément un invité Debian et Window7, puis à exécuter le mode XP dans la machine virtuelle Win7.

Le Core i7 est hyperthreadé, donc vous vous retrouvez avec 8 unités d'exécution, et 8 Go de RAM semblent être une quantité décente d'espace pour les coudes. Cependant, comme d'autres l'ont mentionné, cela dépend beaucoup de ce que vous FAITES dans ces machines virtuelles. Si la mémoire est importante, le nombre de cœurs ne sera pas aussi important que la quantité de RAM que vous pouvez entasser puis allouer aux machines virtuelles. L'échange n'est jamais bon; l'échange au sein d'une machine virtuelle est une mort absolue pour les performances.

Donc, mon conseil est d'abord d'analyser votre véritable ressource de constraing (RAM ou CPU); puis trouvez une plate-forme qui prendra en charge cela.

Michael Scott Shappe
la source
0

Tout d'abord, réfléchissez à votre budget! Les dernières 10% d'améliorations seront très coûteuses.

Vous avez littéralement besoin de tonnes de mémoire et d'un disque rapide. Optez pour un 7200 RPM ou même 10000 RPM si un disque dur traditionnel, ou un SSD (mais ceux-ci sont petits). La RAM dont vous n'avez pas besoin mettra en cache le disque, donc plus c'est mieux.

D'après mon expérience, 4 Go ne suffisent qu'à une seule machine virtuelle en cours d'exécution si elle fait quelque chose d'intéressant.

Thorbjørn Ravn Andersen
la source
0

Un puissant processeur Intel Core i5 avec 8 Go de RAM est recommandé si vous recherchez les meilleurs ordinateurs portables pour la virtualisation. Certains d'entre eux sont répertoriés ici: - 7 meilleurs ordinateurs portables pour la virtualisation Il devrait prendre en charge la technologie de virtualisation Intel également appelée Intel VT-x

MJ Haider
la source
-1

Je suis très satisfait des performances de VMWare Workstation sur mon nouvel ordinateur portable: un Thinkpad T520 avec 8 Go de RAM et le i7-2720QM, qui est un quad core hyperthreading à 2,2 GHz.

J'étais préoccupé par la vitesse du disque. J'ai un disque de démarrage SSD, mais même à 240G, quelques machines virtuelles le rempliraient rapidement. J'ai donc obtenu un gros disque à 7200 tr / min que j'ai installé dans l'Ultrabay et j'exécute des machines virtuelles à partir de là. Je suis sûr que les performances seraient meilleures si elles étaient sur un SSD, mais étant donné tous les compromis, je suis satisfait de cette configuration.

Ian Olsen
la source
veuillez reformuler la réponse afin de ne faire référence à aucun produit particulier - la référence du produit fait que votre réponse est datée rapidement. Suggérez quelles technologies préféreriez-vous avoir et pourquoi
Sathyajith Bhat