Ho dati concreti per Visual C # 2008. La versione breve è che è meglio spendere i propri soldi per una CPU più veloce rispetto a un I / O più veloce . Segue una risposta più lunga ...
La nostra soluzione C # (.NET 3.5) contiene 81 progetti con oltre 2 milioni di righe di codice (inclusi commenti e righe vuote). Un paio di anni fa siamo passati da PC Pentium 4 3 GHz con HDD standard a PC Core 2 Duo 2.6 GHz con HDD WD Raptor da 10.000 RPM (74 GB). L'accelerazione è stata immensa. Da circa 10 minuti a 3,5 minuti. Tutto questo in un ambiente Windows XP Pro a 32 bit con 4 GB di RAM.
Abbiamo anche un Gigabyte i-RAM (google per informazioni), che è fondamentalmente un disco rigido RAM con batteria di backup. A differenza di un SSD che è veloce per la lettura ma più lento per la scrittura, l'i-RAM è veloce per entrambi, ma se perdi energia la batteria dura solo circa 12 ore, quindi devi essere disciplinato con i tuoi check-in. Ciò ha ridotto di un altro minuto i tempi di compilazione sulla piattaforma Core 2 Dou (fino a 2,5 minuti) rispetto all'HDD Raptor da 10.000 RPM.
Da allora ho scoperto che quelle vecchie unità Raptor da 74 GB da 10.000 RPM sono leggermente più lente delle unità moderne da 7.200 RPM della tua varietà da giardino e abbiamo dimostrato che il benchmarking compila costantemente. Non abbiamo provato i nuovi Velociraptor, ma sarebbero sicuramente più veloci ma probabilmente non abbastanza da valerne la pena solo per i tempi di compilazione.
La scorsa settimana abbiamo ottenuto una nuova piattaforma Intel Core i7-870 con un SSD G.Skill Falcon da 128 GB (con il controller Indilix Barefoot) e un HDD standard da 500 GB come seconda unità. Ho anche gettato l'i-RAM in questo PC e ho testato tutte le configurazioni.
Rispetto al Core 2 Duo, che ha compilato in 3,5 minuti per HDD e 2,5 minuti per i-RAM, l'i7-870 si compila in 1 min e 40 secondi per SSD, HDD e i-RAM danno o prendono 3 secondi.
Quindi entrambe le volte che abbiamo aggiornato le workstation degli sviluppatori, la stragrande maggioranza del miglioramento delle prestazioni nei tempi di compilazione C # è derivato da una CPU più veloce piuttosto che da un disco più veloce. Se vuoi velocizzare i tempi di compilazione, metti i tuoi soldi nella CPU invece che nel disco.
Detto questo, l'SSD è molto più veloce per caricare Visual Studio e aprire una soluzione (anche se non ho i tempi per questo). Se puoi permetterti un SSD non tornerai mai indietro poiché ogni programma sul tuo PC si carica molto più velocemente è incredibile. Ma non accelererà in modo significativo le tue compilazioni. E questo con Visual Studio C # a thread singolo. Se Microsoft riuscisse mai a mettere insieme il loro lavoro e realizzasse il loro compilatore nell'IDE multi-threaded, allora potremmo effettivamente usare quei quattro core ...
Aggiornamento maggio 2012: ora abbiamo nuovamente aggiornato i nostri PC e in base a ciò che abbiamo appreso prima di concentrarci sulle prestazioni della CPU. I nuovi PC hanno CPU Intel Core i7-2600k overcloccate a 4,6 GHz, con SSD SATA III da 120 GB della serie Intel 510, 16 GB di RAM e un ampio dissipatore per CPU! Sorprendentemente questo ha quasi dimezzato il tempo di compilazione, e certamente lo attribuisco all'aumento molto grande della potenza della CPU piuttosto che all'SSD più veloce.
I risultati della compilazione C # in Visual Studio 2010 sono stati:
- 159 secondi: Intel Core i7-870 stock (2,9 - 3,3 GHz), 4 GB di RAM con SSD SATA II
- 109 secondi: Intel Core i7-2600k stock (3,4 - 3,8 GHz) 16 GB di RAM con SSD SATA III
- 84 secondi: Intel Core i7-2600k overcloccato (4,63 GHz) 16 GB di RAM con SSD SATA III