Nasz zespół programistów używa NAPRAWDĘ szybkiego sprzętu ... 6000 USD + na maszynę deweloperską od stycznia 2010.
NAJWIĘKSZA różnica, jaką stworzył dla nas jeden komponent (testowaliśmy jedną rzecz na raz), polegała na dodaniu naprawdę szybkiego wejścia / wyjścia i umieszczeniu całego naszego kodu źródłowego na tym sprzęcie. Przeszliśmy przez około 10 różnych konfiguracji (różne macierze RAID z VRaptorami, dyskami SSD, itp.), A najlepszym produktem, jaki wymyśliliśmy, był dysk IOXtreme firmy Fusion IO.
http://www.fusionio.com/products/ioxtreme/
Będziesz potrzebował dużo pamięci RAM, ponieważ sterownik „blokuje” pamięć RAM w większych ilościach, im mniejszy jest twój sformatowany rozmiar bloku na dysku.
Ci źli chłopcy są nieulotni, a SUPER szybki zarówno w Losowych czytaniach, jak i pisaniach. Za te pieniądze nie mogliśmy zmusić naszych platform do szybszej kompilacji.
Naprawdę szybko skompiluję, żeby dać ci pomysł ...
OK, nasze główne rozwiązanie z WSZYSTKIM kodem ma obecnie 37 projektów i łącznie 92 281 linii „wykonywalnego” kodu zgodnie z wynikami Visual Studio Code Metrics Results. Aby skompilować go z ustawieniami programisty DEFAULT C # w IDE (wystarczy ponownie załadować wszystkie ustawienia, aby w razie potrzeby obiektywnie porównać je z ustawieniami domyślnymi), zajmie to 22 sekund. Na identycznej maszynie z 3 Velociraptorami w RAID 5 zajmuje 29 sekund, czyli o 24% więcej.
Ten test został przeprowadzony przy pomocy CLEAN SOLUTION, a następnie REBUILD SOLUTION, więc powinien być to pełny kompilator.
Nie znam was wszystkich, ale kompiluję często po małych i średnich zmianach. Prawdopodobnie średnio 80-100 razy dziennie. Oznacza to, że TYLKO napęd IOXtreme pozwala mi zaoszczędzić 9,3 minuty dziennie. 70 USD za godzinę (średnio około naszego dewelopera), czyli 10 USD dziennie na programistę. Tak więc cała sprawa się zwróci. Naprawdę nieźle ... w tym momencie są wolni.
I NAPRAWDĘ mocno czuję, że czasy kompilacji nigdy nie powinny przekroczyć progu dewelopera, aby odciągnąć uwagę. Niech zaczekam 2 minuty ... W marnowaniu czasu na Wiki, Google lub Youtube. To jest o wiele trudniejsze do zmierzenia.
OK, więc całe platformy wyglądają mniej więcej tak:
Windows 7 Professional 12 GB RAM 2x Czterordzeniowe Xeony (E5504) @ 2,00 GHz. 8 GHz ogółem na maszynę. Highpoint 2320 RAID Kontrolery Serwer Mobo (przepraszam za model, przepraszam) 3x Velociraptory w RAID 5, podzielone na dyski C, D i E. Windows na C, programy na D, foldery danych użytkownika na E. IO Xtreme Drive jako Drive F. Cały kod (nasze i zewnętrzne biblioteki DLL) znajduje się na Drive F.
Powodzenia wszystkim!
Istnieje podobne pytanie: które elementy komputera mają największy wpływ na czasy kompilacji programu Visual Studio .
Największym wąskim gardłem będzie napęd dyskowy podczas wykonywania kompilacji w Visual Studio. Począwszy od programu Visual Studio 2008, podczas kompilacji możesz także korzystać z wielu procesorów lub wielu rdzeni. Gdybym to był ja, wybrałbym następujące:
Dalsza lektura:
źródło
Używam napędu ramdrive od Dataram . Visual Studio nie używa wszystkich rdzeni komputera (8 rdzeni), więc zrobiłem to, że sformatowałem ramdrive z NTFS i aktywowałem Kompresję. Kodowanie źródłowe ma wysoki współczynnik kompresji, więc dysk RAM o pojemności 2 GB zapewnia co najmniej 4 GB pamięci. Możesz także włączyć automatyczne zapisywanie napędu ramdrive! Ta metoda zapewnia najszybsze we / wy, nawet szybsze niż SSD. Jednak zauważysz, że gdy IO nie jest wąskim gardłem, VS bardzo słabo używa wielu rdzeni.
źródło