Chcę wkrótce kupić nowy komputer i chcę maszynę o najlepszej wydajności, która zapewni szybkie czasy kompilacji.
Czy powinienem więc dbać o czterordzeniowy procesor o najwyższej częstotliwości, na jaką mnie stać, czy powinienem raczej inwestować w szybszą pamięć RAM?
Jakie jest twoje zalecenie dla jakiego rodzaju pamięci RAM powinienem wybrać?
Wydajność grafiki nie ma znaczenia, kompilacja oprogramowania i przeprowadzanie symulacji matematycznych.
Prawdopodobnie RAM da ci większy huk za grosze. Kompilowanie, szczególnie dużych aplikacji, wymaga dużej ilości operacji we / wy, a posiadanie większej ilości pamięci RAM oznacza, że można zaoszczędzić więcej czasu stronicowania na dysk iz dysku. Większość procesorów dzisiaj, szczególnie jeśli korzystasz z taniego czterordzeniowego procesora, zapewni mnóstwo mocy procesora do kompilacji, ale posiadanie pamięci RAM pomoże w przesyłaniu danych tam iz powrotem.
Druga myśl zależy od symulacji matematycznych i procesów budowania. Czy można je zrównoleglać? Jeśli nie, dodanie większej liczby rdzeni tak naprawdę nic nie przyspieszy, chociaż nowe układy Intela (Core i7) są dość szybkie w przeliczeniu na rdzeń.
źródło
Powiedziałbym, że pobiera mnóstwo pamięci RAM i używa ramdysków do tymczasowego przechowywania. To znacznie zwiększy szybkość kompilacji. Szybki wielordzeniowy procesor też byłby w porządku, ale myślę, że bardziej skorzystałbyś z wielu pamięci RAM. W tym artykule znajdziesz kilka pomysłów. Oto trochę więcej informacji i trochę więcej tutaj . Myślę, że korzystanie z pamięci RAM będzie szybsze niż korzystanie z SSD, ale mogę się mylić.
źródło
W obliczeniach procesor jest zdecydowanie najważniejszy.
Kompilacja obciąży zarówno procesor, jak i pamięć RAM.
Myślę, że najbardziej opłacalnym rozwiązaniem byłoby uzyskanie najlepszego procesora, na jaki Cię stać, a najlepiej czterordzeniowego. Pamięć RAM jest tak tania, jak jest (DDR3 jest teraz tak tania jak DDR2), więc możesz łatwo podłączyć tyle pamięci RAM, ile potrzebujesz na małą monetę (16 GB pamięci DDR3 za 180 USD na nowy ... Rozumiem, że to przesada, próbuję tylko pokazać, jak tanio to jest). Zainwestowałbym więc tyle, ile mogę sobie pozwolić na wysokiej jakości procesor.
źródło
make
Z-j
opcją. Ponadto wierzę, że llvm może lub będzie w stanie skompilować pojedynczy plik przy użyciu wielu wątków.distcc
(make -j8
(lokalnie) domake -j30
((dystrybuowane przez sieć))Cóż, grafika może pomóc, ponieważ karta graficzna z procesorem może zmniejszyć obciążenie głównego procesora. Moc procesora jest prawdopodobnie ważniejsza niż pamięć RAM, ale im lepsze oba, tym lepiej.
źródło
ze względu na ograniczenia fizyczne, same rdzenie nie będą w najbliższym czasie znacznie szybsze, więc jeśli nie planujesz przejścia na niestandardowe inwestycje w krzem, szybsze procesory nie rozwiążą twojego problemu, chyba że równoległość naprawdę zrobi jakąś różnicę, ale tak czy inaczej wiele programów prawie nie przekracza 4 rdzeni , Wiem o tym, ponieważ bardzo często kompiluję cały system i wiele razy szukam statystyk zasobów. Co więcej, nawet jeśli programiści chcieli zwiększyć paralelizację, czasem trudno jest zrobić to w dobry sposób. Inwestowanie w procesory jest dobre, aby zwiększyć wydajność usług lub jeśli wykonujesz obliczenia w pierwszej kolejności na podstawie danych; nawet jeśli wpłynie to później na zachowanie wykonawcze; jeśli twoje kompilacje są zgodne z niektórymi z tych wzorców, może być trudniej omówić, ale są to szczególne przypadki procesu kompilacji; dlatego na przykład w grafice więcej rdzeni wciąż robi różnicę. Inne niż to, co można zrobić, aby maksymalnie zwiększyć liczbę operacji we / wy, może to obejmować dyski, pamięci RAM i płyty główne
źródło