![빌드 속도를 높이는 방법](https://linux55.com/image/17500/%EB%B9%8C%EB%93%9C%20%EC%86%8D%EB%8F%84%EB%A5%BC%20%EB%86%92%EC%9D%B4%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
저는 Ubuntu 10.04를 사용하여 Linux 상자를 구축하고 있습니다. 어떻게 하면 빌드 속도를 높일 수 있나요? CPU가 4개이고 RAM이 많습니다. 프로세스 그룹의 크기를 -20으로 조정했습니다. 제가 할 수 있는 다른 일이 있나요?
답변1
대부분 의 소프트웨어 빌드 프로세스 는 make
.make
-j
make -j 8
답변2
프로세스 그룹의 크기를 -20으로 다시 조정하는 것은 나쁜 생각입니다. 이 양호 수준은 우선 순위가 가장 높은 시스템 핵심 작업에서만 사용해야 합니다. 그렇지 않으면 응답성이 떨어지거나 시스템이 정지될 수도 있습니다. 그리고 잠재적인 컴파일 시간 이득은 최소화됩니다.
와는 별개로케일럽이 뭔가를 제안했어요, 컴파일을 많이 하면 가속 빌드를 사용할 수도 있습니다.컴파일러 캐시또는 다음 명령을 사용하여 네트워크의 여러 시스템에 빌드 작업을 배포합니다.거리또는아이스크림.
답변3
rozcietrzewiacz의 답변에 추가 :
첫 번째 큰 개선은 디스크입니다. 더 빠른 IOP 디스크, 10,000 또는 15,000rpm으로 실행되는 디스크, 바람직하게는 SSD를 사용하고 그 다음에는 지갑에 의해서만 제한됩니다.
임의의 예, Samsung 6Gbps SATA 2 SSD:
http://www.engadget.com/2011/08/17/samsungs-6gbps-ssd-gets-a-consumer-label-october-ship-date/
OCZ는 500,000 IOP라는 가장 극단적인 하드웨어를 보유하고 있습니다.
http://www.engadget.com/2011/08/02/oczs-z-drive-r4-pcie-ssd-offers-2-800mb-sec-500-000-iops-pl/
트리를 tmpfs
파일 시스템에 복사해 볼 수도 있지만 Linux의 파일 캐시는 이미 꽤 좋습니다.
빠른 개발 사용을 위해 모든 최적화가 비활성화되면 빌드가 더 빨라집니다. 이는 프로세서가 느렸던 90년대의 조정인 경향이 있으며 이제는 거의 IO에 관한 것입니다.
내가 상상할 수 있는 가장 복잡한 접근 방식은 cramfs
변경되지 않는 트리의 큰 부분을 저장하는 것입니다. 압축 파일 시스템을 사용하면 디스크 액세스 횟수가 줄어듭니다.