답변:
나는 둘 다 말하지 않을 것이다. 오히려 빠른 SSD 하드 드라이브를 구입하십시오 . 물론 적절한 CPU와 RAM 용량이 필요하지만, 그래 ...
아마도 RAM은 당신에게 돈을 더 큰 타격을 줄 것입니다. 컴파일, 특히 대규모 응용 프로그램은 매우 I / O 집약적이며 RAM이 많을수록 디스크와의 페이징 시간을 절약 할 수 있습니다. 오늘날 대부분의 CPU, 특히 저렴한 쿼드 코어를 사용하는 경우 컴파일에 충분한 CPU 성능을 제공하지만 RAM을 사용하면 데이터를주고받는 데 도움이됩니다.
두 번째 생각에서, 그것은 일종의 수학 시뮬레이션과 빌드 프로세스에 달려 있습니다. 그것들은 병렬화 가능합니까? 그렇지 않다면, 새로운 인텔 칩 (Core i7)이 코어별로 상당히 빠르지 만 더 많은 코어를 추가해도 속도가 빨라지는 않습니다.
계산을 위해서는 프로세서가 가장 중요합니다.
컴파일은 프로세서와 RAM을 모두 강조합니다.
가장 비용 효율적인 솔루션은 귀하가 감당할 수있는 최상의 CPU, 바람직하게는 쿼드 코어를 얻는 것입니다. RAM이 그대로 (DDR3이 DDR2만큼 저렴함) RAM이 작기 때문에 적은 동전에 필요한만큼 많은 RAM을 쉽게 연결할 수 있습니다. 그것이 얼마나 저렴한 지 보여주기 위해 노력하고 있습니다). 그래서 가능한 한 양질의 CPU에 감당할 수있는만큼 투자 할 것입니다.
make
사용하여 여러 gcc 작업을 동시에 생성 할 수 있습니다 -j
. 또한 llvm은 여러 스레드를 사용하여 단일 파일을 컴파일 할 수 있거나 컴파일 할 수 있다고 생각합니다.
distcc
( make -j8
(로컬) 최대 make -j30
(네트워크를 통해 분산))
CPU가있는 그래픽 카드는 메인 CPU의 부하를 줄일 수 있기 때문에 그래픽이 도움이 될 수 있습니다. CPU보다 CPU 전원이 더 중요 할 수 있지만 둘 다 더 좋을수록 좋습니다.
물리적 한계로 인해 코어 자체는 언제라도 훨씬 빨라지지 않습니다. 따라서 더 빠른 CPU에 투자하는 맞춤형 실리콘으로 전환하려는 경우가 아니라면 병렬화가 실제로 약간의 차이를 만들지 않으면서도 많은 소프트웨어가 거의 4 코어를 넘지 않는 한 문제가 해결되지 않습니다. , 나는 종종 전체 시스템을 컴파일하고 여러 번 리소스 통계를 보러 가기 때문에 그것을 알고 있습니다. 또한 개발자가 병렬화를 늘리고 싶더라도이를 좋은 방법으로 만들기 위해 때로는 혼란스러워합니다. CPU에 대한 투자는 서비스 성능을 향상 시키거나 데이터를 기반으로 먼저 계산을 수행하는 경우에 좋습니다. 나중에 실행 동작에 영향을 미칠지라도; 컴파일이 이러한 패턴 중 일부를 따르는 경우 논의하기가 더 어려울 수 있지만 빌드 프로세스의 특별한 경우입니다. 예를 들어, 그래픽 컴퓨팅에서 더 많은 코어가 여전히 약간의 차이를 만듭니다. 그 외에는 최대한 많이 I / O를 늘리기 위해 할 수있는 일을 수행하며 디스크, 램 및 마더 보드가 포함될 수 있습니다.