Quelles fonctionnalités puis-je rechercher dans un ordinateur portable pour la virtualisation – lourdes charges de travail?

Je fais la plus grande partie 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) font des choses péniblement lentement lorsqu'il y a plus d'une machine virtuelle à la fois (ce qui, étant donné que j'étais Le développement multi-serveurs est la plupart du temps).

Je sais qu'il existe des processeurs qui (par exemple) ont des fonctionnalités spécifiques pour rendre la virtualisation rapide, et je pense qu'il existe des fonctionnalités de chipset qui rendent l'accès à la mémoire plus rapide spécifiquement pour les charges de travail de virtualisation, mais je ne suis pas positif sur l'une et l'autre Même s'ils existent, je ne suis pas sûr qu'ils soient disponibles sur les ordinateurs portables.

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

Cela dépend aussi de votre développement. J'ai essayé de compiler le code source Chromium sur un Core i5 (pas de machines virtuelles, sur un ordinateur réel) et 4 GiB de RAM ne suffisaient pas – 6 GiB était presque assez, mais j'avais encore besoin de ~ 1 GiB de pagefile pour Prévenir l'absence de mémoire. (Je désactive normalement le fichier de la page.) Faire cela sur une machine virtuelle était clairement hors de question sur mon système, principalement en raison de la RAM (mais aussi de la CPU). Donc RAM est très important aussi, surtout avec 2 machines virtuelles, bien que cela dépend de ce que vous faites.

Une autre caractéristique qui pourrait être utile est d'avoir un véritable ordinateur portable double-core (ou plus), ayant une VM exécutée sur un noyau et une autre sur un autre noyau. Cependant, je n'ai pas testé l'impact de cette personne, car je ne supporte généralement qu'une machine virtuelle à tout moment.

Je pense que votre problème a plus à voir avec la RAM qu'avec la CPU. Si vous pouvez accumuler plus de RAM dans votre ordinateur portable, cela ira longtemps. Un bon hyperviseur peut diviser le temps de la CPU très bien, mais RAM doit s'engager dans des machines virtuelles spécifiques. Après avoir dépassé la RAM, cherchez plus de noyaux (c.-à-d. Un quad-core à cadence lente, par opposition à un double coeur cadencé), de sorte que chaque machine logique (y compris l'hôte) peut avoir au moins un noyau dédié. Vous avez également demandé à propos d'une technologie spécifique pour un meilleur support VM. À l'exception de certains processeurs de classe netbook, n'importe quel processeur / carte mère sur le marché aujourd'hui appuiera ces technologies, alors vous êtes déjà en train de faire tout ce que vous pouvez. Cependant, ces options sont parfois désactivées par défaut dans les paramètres BIOS / UEFI, afin de vous assurer que vos fonctionnalités de virtualisation sont effectivement activées. Enfin, l'exécution de plusieurs machines virtuelles peut parfois créer beaucoup de pression d'IO, donc une bonne configuration SSD ou RAID peut souvent aider considérablement.

Intel dispose d'une technologie de virtualisation appelée VT qui fournit un ensemble d'instructions adapté spécifiquement aux machines virtuelles. L' Intel ARK dispose d'une liste de processeurs compatibles VT . Vous y trouverez aussi bien des processeurs mobiles que des ordinateurs de bureau.

Ma plate-forme actuelle: 2ème génération Core i7 Quad Core, 8GiB de RAM. La Mine arrive à être MacBook Pro, mais je suis 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 exécuté simultanément un client Debian et Window7, puis j'ai exécuté le mode XP dans la VM Win7.

Core i7 est hyperthreaded, donc vous finissez par 8 unités d'exécution, et 8GiB de RAM semble être une bonne quantité de coude. Cependant, comme d'autres l'ont mentionné, beaucoup dépend de ce que vous faites dans ces machines virtuelles. Si cela nécessite beaucoup de mémoire, le nombre de noyaux ne sera nullement aussi important que la quantité de RAM que vous pouvez utiliser et ensuite allouer aux machines virtuelles. L'échange n'est jamais bon; L'échange dans une machine virtuelle est la mort absolue des performances.

Donc, mon conseil d'abord est d'analyser ce que votre ressource de contrainte réelle est (RAM ou CPU); Ensuite, recherchez une plate-forme qui appuiera cela.

Tout d'abord, considérez votre budget! Les dernières améliorations de 10% seront très coûteuses.

Vous avez besoin de beaucoup de mémoire et d'un disque rapide. Passez pour 7200 tr / min ou même 10000 tr / min si disque dur traditionnel ou un SSD (mais ceux-ci sont petits). La RAM dont vous n'avez pas besoin, mettra en cache le disque de sorte que le mieux sera le mieux.

4 Gb est dans mon expérience suffisante pour une seule machine virtuelle fonctionnant si elle fait quelque chose d'intéressant.

Je suis très heureux de la performance de VMWare Workstation sur mon nouvel ordinateur portable: un Thinkpad T520 avec 8 gigs de RAM et l'i7-2720QM, qui est un quad-core hyperthreading de 2,2 GHz.

J'étais préoccupé par la vitesse du disque. J'ai un lecteur de démarrage SSD, mais même à 240G, quelques machines virtuelles la complètent rapidement. J'ai donc eu un gros lecteur de 7200 tr / min que j'ai mis dans l'Ultrabay et je lance des machines virtuelles à partir de là. Je suis sûr que les performances seraient meilleures si elles étaient sur un SSD, mais compte tenu de tous les compromis, je suis content de cette configuration.