Quali funzionalità dovrei cercare in un laptop per carichi di lavoro pesanti per la virtualizzazione?


19

Faccio la maggior parte del mio sviluppo in VMware Workstation (versione 7 al momento). Sfortunatamente, sul mio laptop con 4 GB di RAM, un OCZ Vertex 2 240 GB e un Core 2 Duo T9550 (2,66 GHz) fa le cose criminalmente lentamente quando c'è più di una VM in esecuzione alla volta (che dato che sono stato fare lo sviluppo multi-server ultimamente è il più delle volte).

So che ci sono alcuni processori che (ad esempio) hanno funzionalità specifiche per rendere veloce la virtualizzazione, e penso che ci siano alcune funzionalità di chipset che rendono più veloce l'accesso alla memoria specificamente per i carichi di lavoro di virtualizzazione, ma non sono positivo su nessuno di questi, e anche se esistono, non sono sicuro che siano disponibili sui laptop.


1
Mi sembra una raccomandazione per lo shopping.
Wuffers,

4
@Mark: No, i consigli per lo shopping richiedono un prodotto specifico. Per un esempio, vedi superuser.com/questions/254068/… - chiedere cosa cercare non è una raccomandazione per lo shopping, ma chiedere un prodotto specifico lo è.
Billy ONeal,

Domanda utile e interessante con qualcosa da imparare sui processori e sulla configurazione per la virtualizzazione, applicabile a una gamma di prodotti e produttori. Vale la pena tenere. +1
JRobert,

Risposte:


9

La maggior parte dei chip ora ha estensioni di virtualizzazione (Intel-VT o AMD-V). Per esperienza personale (VirtualBox), posso dire che alcune funzionalità, in particolare il paging nidificato , sono molto utili; il paging nidificato, ad esempio, riduce notevolmente il tempo di avvio di Ubuntu (da 45 secondi a 15 secondi).
(Modifica: sembra che il "paging nidificato" sia anche chiamato "traduzione dell'indirizzo di secondo livello" o "tabelle di pagine estese" [EPT].)

Dipende anche da quale sia il tuo sviluppo. Ho provato a compilare il codice sorgente di Chromium su un Core i5 (nessuna macchina virtuale, su un vero computer) e 4 GiB di RAM non erano sufficienti - 6 GiB erano quasi sufficienti, ma avevo ancora bisogno di ~ 1 GiB di file di paging per evitare di esaurire la memoria. (Normalmente spengo il file di paging.) Farlo su una VM era chiaramente fuori questione sul mio sistema, principalmente a causa della RAM (ma anche della CPU). Quindi anche la RAM è molto importante, specialmente con 2 VM, anche se dipende da cosa stai facendo.

Un'altra caratteristica che potrebbe essere utile è avere un vero laptop dual-core (o più), con una VM in esecuzione su un core e un'altra su un altro core. Non ho testato l'impatto di questo personalmente, però, poiché di solito eseguo solo una macchina virtuale alla volta.


C'è qualcosa che posso fare per verificare se la CPU supporta o meno il paging nidificato?
Billy ONeal,

@Billy: in cima alla mia testa, direi di scaricare VirtualBox e vedere se la casella di controllo è abilitata lì. :-) Cercherò di trovare una soluzione migliore, dato che probabilmente puoi provarlo con le cpuidistruzioni.
Mehrdad,

@Billy: Sfortunatamente sembra che sia un po 'più difficile rilevare EPT per processori Intel rispetto ai processori AMD; devi leggere un registro specifico del modello. Sembra come creare una macchina virtuale in VirtualBox e quindi provare a selezionare la casella di paging nidificato è probabilmente più semplice. (Una rapida occhiata a Wikipedia dice che le CPU basate su Nehalem e successive dovrebbero supportarla, però.)
Mehrdad,

Conosci qualcuno con un chip abilitato per EPT che può verificare qualcosa come CPU-Z? (Non sono sicuro che CPU-Z lo mostri - nessun EPT è elencato per questo chip, anche se mostra VT-x)
Billy ONeal

@Billy: No, CPU-Z non lo mostra sul mio laptop. : \ Anche la pagina di Intel non lo mostra. Strano ...
Mehrdad,

12

Penso che il tuo problema abbia più a che fare con la RAM che con la CPU. Se riesci a riempire più RAM nel tuo laptop, farà molto. Un buon hypervisor può dividere abbastanza bene il tempo della CPU, ma la RAM deve essere impegnata in macchine virtuali specifiche. Dopo aver esaurito la RAM, cercare più core (ad esempio: un quad core con clock più lento rispetto a un dual core con clock più veloce), in modo che ogni macchina logica (incluso l'host) possa avere almeno un core dedicato. Hai anche chiesto informazioni su una tecnologia specifica per un migliore supporto VM. Ad eccezione di alcuni processori di classe netbook, qualsiasiil processore / scheda madre oggi sul mercato supporterà queste tecnologie, quindi è probabile che tu stia già facendo tutto il possibile. Tuttavia, queste opzioni a volte sono disabilitate per impostazione predefinita nelle impostazioni BIOS / UEFI, per cercare lì per assicurarsi che le funzionalità di virtualizzazione siano effettivamente abilitate. Infine, l'esecuzione di più macchine virtuali a volte può creare molta pressione IO, quindi una buona configurazione SSD o RAID può spesso aiutare considerevolmente.


Core 2 Duo è di 2 generazioni fa ... forse le cose sono state aggiunte da allora. Sono sicuro che almeno non supporta la funzione "tabelle di pagine nidificate".
Billy ONeal,

@Billy - Core 2 ha già incluso set di istruzioni per le ottimizzazioni VM più grandi e semplici (la frutta a sospensione bassa, se vuoi), e sono ancora processori abbastanza capaci. RAM e più core è davvero il posto migliore dove trascorrere il tuo tempo e denaro ora.
Joel Coehoorn,

Le tabelle di pagine nidificate hanno ridotto il mio avvio di un fattore 3 ... La RAM non lo fa del tutto. : \
Mehrdad,


2

La mia attuale attrezzatura: Core i7 Quad Core di seconda generazione, 8GiB di RAM. Il mio è MacBook Pro, ma sono abbastanza sicuro che otterrai risultati rapidi indipendentemente dalla marca e dal modello specifici. L'altro giorno stavo eseguendo con successo un guest Debian e Window7 contemporaneamente, e quindi eseguivo la modalità XP nella VM Win7.

Il Core i7 è hyperthreaded, quindi ti ritrovi con 8 unità di esecuzione e 8GiB di RAM sembrano essere una discreta quantità di spazio per il gomito. Tuttavia, come altri hanno già detto, molto dipende da cosa stai facendo in quelle macchine virtuali. Se la memoria è intensiva, il numero di core non sarà importante quanto la quantità di RAM che è possibile inserire e quindi allocare alle macchine virtuali. Lo scambio non è mai buono; lo scambio all'interno di una VM è una morte assoluta per le prestazioni.

Quindi il mio consiglio prima di tutto è analizzare quale sia la tua vera risorsa vincolante (RAM o CPU); quindi trova una piattaforma che lo supporterà.


0

Prima di tutto, considera il tuo budget! Gli ultimi miglioramenti del 10% saranno molto costosi.

Hai bisogno letteralmente di tonnellate di memoria e di un disco veloce. Scegli un 7200 RPM o anche 10000 RPM se un disco rigido tradizionale o un SSD (ma questi sono piccoli). La RAM che non ti serve, memorizzerà il disco nella cache in modo che tanto meglio è.

4 GB è nella mia esperienza sufficiente per una singola VM in esecuzione se fa qualcosa di interessante.


0

Un potente processore Intel Core i5 con 8 GB di RAM è consigliato se cerchi i migliori laptop per la virtualizzazione. Alcuni di questi sono elencati qui: - 7 migliori laptop per la virtualizzazione Dovrebbe supportare la tecnologia di virtualizzazione Intel chiamata anche Intel VT-x


-1

Sono molto contento delle prestazioni di VMWare Workstation sul mio nuovo laptop: un Thinkpad T520 con 8 GB di RAM e i7-2720QM, che è un quad core hyperthreading da 2,2 GHz.

Ero preoccupato per la velocità del disco. Ho un disco di avvio SSD, ma anche a 240G, alcune VM lo riempirebbero rapidamente. Quindi ho ottenuto un grande disco da 7200 RPM che ho inserito nell'Ultrabay e da lì eseguo VM. Sono sicuro che le prestazioni sarebbero migliori se fossero su un SSD, ma visti tutti i compromessi, sono contento di questa configurazione.


si prega di riformulare la risposta in modo da non fare riferimento ad alcun prodotto particolare - il riferimento al prodotto fa sì che la risposta sia datata rapidamente. Suggerisci quali tecnologie preferiresti avere e perché
Sathyajith Bhat
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.