어떤 PC 구성 요소가 Visual Studio의 컴파일 시간에 가장 큰 영향을 줍니까?


답변:



13

내가 찾은 요소가 가장 큰 차이점은 실제 요소가 아니라 소프트웨어 요소입니다. 어떤 안티 바이러스를 설치 했습니까?

일부 바이러스 백신 제품은 소프트웨어 개발을 잘 처리하지 못합니다. 이러한 모든 응용 프로그램 파일이 다시 작성되는 것을보고 매번 파울 플레이를 의심하며 모든 파일을 다시 검색합니다.

자세한 내용은 /programming/1170078/is-it-usual-for-aspx-files-to-take-5-10-seconds-to-save/1170129#1170129 를 참조 하십시오 .

반면에 기존 시스템의 성능을 향상 시키려면 사용 가능한 메모리를 최대한 활용하여 빠른 승리를 거두십시오.


사무실의 PC가 TrendMicro OfficeScan을 사용하고 있습니다. 집에있는 나의 개발 랩탑은 AVG 8을 사용하고 있습니다.
Rob Allen

3
"트렌드 마이크로". 이런. 다른 것을 위해 그것을 바꿀 수 없다면, 어떤 공연에도 작별 인사를하십시오.
Bevan

8

여기 은 MSBUild에 여러 CPU를 사용하는 것에 대한 Scott Hanselman의 훌륭한 연구 입니다. 속도 향상은 상당히 극적입니다.

편집 : 그러나 Visual Studio를 잘 사용하려면 많은 RAM이 필요합니다. :)


+1 주제에 관한 좋은 기사. 나는 그것을 잊었다. 나는 또한 이것에 관해 팟 캐스트를했다고 생각합니다.
BinaryMisfit

4

적당한 크기의 C ++ 코드베이스에 대한 개인적인 경험 :

오래된 기계

프로세서 : Pentium 4 HT 3.06 GHz
메모리 : 1GB DDR RAM (PC 2100, 333MHz)
디스크 : 7200RPM 하드 드라이브 (메모리가있는 경우 UDMA 100)
컴파일 시간 : 50 분

새로운 기계 :

프로세서 : 1.6GHz에서 Core i7 720QM (8 개의 논리 프로세서), 모든 코어가 활성 일 때 1.73GHz로 터보 부스트
메모리 : 1066MHz에서 8GB DDR3 RAM
디스크 : 7200RPM 하드 드라이브 (SATA 2)
컴파일 시간 : 4 분 (with / MP )


결론 : 프로세서가 많을수록 메리 어는 상대적으로 낮은 클럭 속도에서도 가능합니다. SSD는 시간을 더 향상시킬 것이지만 컴파일 메시지를 관찰하면 30 초 이상 향상시킬 것으로 의심됩니다.


3

내가 주로 프로세서와 메모리를 기억하는 한. 빠른 구글은 컴파일 시간을 향상시킬 수있는 다양한 조정을 공개했습니다.

조엘은 최근 컴파일에 솔리드 스테이트 디스크의 효과를 게시 여기에 . 디스크 속도는 일반적으로 컴파일 시간을 크게 향상시키지 않습니다. 그러나에 따라 그것을 가리키는 아웃과 같은 효과를 가지고있다 lyngbym을 .


1

C ++ 프로그램을 구축하는 데있어 가장 중요한 요소는 구조적입니다. 소스 코드가 매우 수직적으로 구조화 된 경우 빌드 시간, 특히 증분 빌드에 치명적인 영향을 미칩니다. 쿼드 코어 제온의 극적인 향상을 위해 프로젝트의 일부를 로컬로 재구성했습니다. 18 개월 후에도 (프로젝트를 소유 한 사람들) 여전히 Core i7 시스템에서도 내 벽시계 빌드 시간을 맞출 수 없습니다.

소프트웨어 레이아웃의 효과 (긍정적 또는 부정적)는 팀의 모든 구성원과 수행하는 모든 빌드에 따라 증가합니다.


다른 코드 구조를 설명하는 링크가 있습니까? 나는 당신이 말하는 것을 알고 있다고 생각하지만 확실하지 않습니다.
Rob Allen

내 참조를 찾는 데 문제가 있지만 일반적인 아이디어는 1) 가능한 경우 전달 선언을 사용하고 2) 전달 선언이 작동하지 않을 때만 파일을 포함하고 3) 포함하는 파일이 더 선언하지 않는지 확인하십시오 필요 이상으로, 컴파일 할 특정 소스 파일에 필요하지 않은 더 많은 파일을 포함시킬 수 있습니다 (일명 헤더를 작게 유지하고 소스 파일에서와 마찬가지로 앞으로 선언을 사용하십시오).
Sam Harwell

1

Xoreax IncrediBuild 는 내가 일하는 컴파일 시간을 크게 개선 한 분산 빌드 시스템입니다. (아쉽게도 링크 시간이 여전히 길다. 특히 전체 프로그램 최적화와 링크 타임 코드 생성을 사용한 릴리스 빌드이지만 예상된다.)

대체 텍스트

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.