Creazione di una macchina Visual Studio veloce


28

Voglio creare un PC per eseguire Visual Studio molto rapidamente. Ho circa 30 progetti C # che includono servizi WCF, servizi Web IIS. Quindi per me significa rapidamente cicli di modifica, compilazione, esecuzione e debug rapidi.

Come dovrei bilanciare il mio investimento in potenza della CPU, memoria e tecnologia di azionamento, quando costruisco una macchina per i miei scopi?

Risposte:


19

Il nostro team di sviluppo utilizza l'hardware DAVVERO veloce ... $ 6.000 + per Dev Machine a partire da gennaio 2010.

La differenza PIÙ GRANDE che un singolo componente ha fatto per noi (abbiamo testato una cosa alla volta) è stata l'aggiunta di I / O molto veloci e l'inserimento di tutto il nostro codice sorgente su quell'hardware. Abbiamo esaminato circa 10 diverse configurazioni (vari RAID con VRaptor, SSD, ecc ...) e l'elemento migliore che abbiamo creato è stato il drive IOXtreme di Fusion IO.

http://www.fusionio.com/products/ioxtreme/

Avrai bisogno di molta RAM poiché il driver "blocca" la RAM in quantità maggiori quanto più piccola è la dimensione del blocco formattato sull'unità.

Quei cattivi ragazzi sono non volatili e super veloci sia in lettura che in scrittura casuali. Per i soldi, non siamo riusciti a compilare i nostri rig più velocemente.

Prenderò una compilazione molto velocemente per darti un'idea ...

OK, la nostra soluzione Master con TUTTO il codice ha attualmente 37 progetti e un totale di 92.281 righe di codice "eseguibile" in base ai risultati delle metriche del codice di Visual Studio. Per compilarlo con le impostazioni dello sviluppatore DEFAULT C # nell'IDE (è sufficiente ricaricare tutte le impostazioni in modo da poter confrontare obiettivamente con i valori predefiniti, se lo si desidera) richiede 22 secondi. Su una macchina identica con 3 Velociraptor in RAID 5 sono necessari 29 secondi, quindi un aumento di circa il 24%.

Quel test è stato eseguito con CLEAN SOLUTION seguito da REBUILD SOLUTION, quindi avrebbe dovuto essere una compilazione completa.

Non so tutti voi, ma compilo frequentemente dopo cambiamenti da piccoli a medi. Probabilmente in media 80-100 volte al giorno. Ciò significa che SOLO il drive IOXtreme mi fa risparmiare 9,3 minuti al giorno. A $ 70 all'ora (il nostro tasso medio di sviluppatori, all'incirca) è di $ 10 al giorno, per sviluppatore. Quindi la cosa richiede circa 90 giorni per pagarsi. Non male davvero ... sono liberi a questo punto.

Inoltre, SOLO VERAMENTE che i tempi di compilazione non dovrebbero mai superare la soglia di distrazione di uno sviluppatore. Fammi aspettare 2 minuti ... In su Wiki o Google o Youtube perdere tempo. È molto più difficile da misurare.

OK, quindi l'intero impianto è simile al seguente:

Windows 7 Professional 12 GB RAM 2x Quad Core Xeons (E5504) a 2,00 GHz. 8 GHz totali per macchina. Controller Mobo Highpoint 2320 Server Mobo (ho dimenticato il modello, mi dispiace) 3x Velociraptor in RAID 5, suddivisi in unità C, D ed E. Windows su C, programmi su D, cartelle Dati utente su E. IO Xtreme Drive come Drive F. Tutto il codice (DLL nostra e di terze parti) si trova su Drive F.

Buona fortuna a tutti voi!


Fantastico ... il collegamento a quella gamma di prodotti è ora interrotto ... le aziende tecnologiche non capiscono come funziona il Web!
Mike Nelson,

1
Come è cambiato negli ultimi 6 anni? Qualche nuovo prodotto che consiglieresti? Suppongo che il prezzo sia sceso significativamente adesso.
TWilly,

La macchina costa $ 6.000 e risparmia $ 10 al giorno. Come si arriva al periodo di rimborso di 90 giorni?
mga911,

2
+1 per il commento sulla "soglia di distrazione" - la perdita di produttività da questo può essere un costo inaspettato enorme quando i tempi di compilazione diventano più lenti.
peterflynn,

17

C'è una domanda simile qui: quali componenti del PC hanno il maggiore impatto sui tempi di compilazione di Visual Studio .

Il più grande collo di bottiglia sarà l'unità disco quando si eseguono build in Visual Studio. A partire da Visual Studio 2008, puoi anche sfruttare più processori o più core durante le tue build. Se fossi in me, sceglierei quanto segue:

  • Piattaforma Core I7
  • 6+ GB di RAM
  • Windows 7 a 64 bit (è più veloce di Vista )
  • Un'unità a stato solido veloce
  • Nessun software antivirus attivo in esecuzione durante la compilazione!

Ulteriori letture:


+1 per una risposta chiara, ma non prendere solo i7, prendi quelli nuovi!
Ivo Flipse,

Che dire di più unità - una per O / S, una per "Programmi", una per "build"? SSD batterebbe ancora questo?
JBR Wilkinson,

@JBRWilkinson Sì, SSD è l'unità più veloce sul mercato, a condizione che tu ottenga il tipo giusto.
Cowgod,

3

Uso un ramdrive, di Dataram . Visual Studio non usa tutti i miei core PC (8 Core), quindi ho formattato il ramdrive con NTFS e attivato la compressione. Il codice sorgente ha un alto rapporto di compressione, quindi un ramdrive di 2 GB offre almeno 4 GB di spazio di archiviazione. Puoi anche attivare il salvataggio automatico di ramdrive! Questo metodo offre l'IO più veloce, anche più veloce dell'SSD. Tuttavia noterete che quando l'IO non è il collo di bottiglia, VS è molto povero nell'uso di più core.


Questo è davvero un ottimo risultato?
Anirudha Gupta,

1
L'ho provato e non sono riuscito a misurare alcuna differenza rilevante rispetto a un SSD
thumbmunkeys l'

@thumbmunkeys Uso primocache e salva il disco quando spengo il PC. Tutto letto Scritto fatto nella RAM.
Anirudha Gupta,

@GuptaAnirudha è più veloce di un SSD?
thumbmunkeys

1
Il mio studio visivo funziona più velocemente di prima, la prima lettura viene eseguita da disco, quindi non è veloce per la prima volta ma se esegui lo stesso progetto nelle ultime 5-6 ore puoi vedere la differenza.
Anirudha Gupta,
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.