소스가 다른 플랫폼에서 여러 다른 아키텍처에 대해 컴파일 된 경우와 비교하여 실제 시스템의 소프트웨어 구성 요소에 대한 소스를 수동으로 컴파일하면 성능이 향상됩니까 (빠른)? 필자는 다운로드 한 소스를 컴파일하는 좋은 결과를 얻었으며 소프트웨어 업데이트와 함께 종종 사전 컴파일 된 바이너리를 다운로드하는 대신 컴파일로 인한 것인지 궁금합니다.
소스가 다른 플랫폼에서 여러 다른 아키텍처에 대해 컴파일 된 경우와 비교하여 실제 시스템의 소프트웨어 구성 요소에 대한 소스를 수동으로 컴파일하면 성능이 향상됩니까 (빠른)? 필자는 다운로드 한 소스를 컴파일하는 좋은 결과를 얻었으며 소프트웨어 업데이트와 함께 종종 사전 컴파일 된 바이너리를 다운로드하는 대신 컴파일로 인한 것인지 궁금합니다.
답변:
소스에서 컴파일하면 컴파일러 플래그를 특정 플랫폼에 원하는 방식으로 설정할 수 있습니다. 사용자와 동일한 설정으로 컴파일 된 패키지를 다운로드해도 아무런 차이가 없지만 설정을 기본값에서 변경하면 크게 향상 될 수 있습니다.
예를 들어, 다운로드 용 바이너리가 의도적으로 또는 실수로 디버깅 용으로 컴파일 된 경우보다 적극적인 최적화를 설정하면 거의 모든 상황에서 성능이 향상됩니다. 반면에 컴파일 된 코드가 최대 값에 최적화되면 아무런 차이가 없습니다.