컴파일러 최적화

컴파일러 최적화()는 컴파일러에서 출력되는 실행 프로그램의 효율성을 최적화하는 과정을 말한다. 일반적으로 프로그램의 실행 속도를 최대화하거나 프로그램이 차지하는 메모리의 양을 최소화하기 위해 많이 이용된다. 휴대용 컴퓨터가 성장함에 따라 프로그램에 의해 소비되는 전력을 최소화하는 것도 고려된다.

종류 
 피홀 최적화
 로컬 최적화
 전역 최적화
 루프 최적화
 프로시저 간 완전한 프로그램 및 링크 타임 최적화
 기계어 최적화
 프로그래밍 언어 독립 vs 언어 의존
 기계 독립 vs 기계 의존

역사 
1960년대 초기 컴파일러들은 단순히 코드를 올바르게 또는 효율적으로 컴파일함으로써 컴파일 시간을 최소화하는 것이 주된 관심사였다. 초기의 저명한 최적화 컴파일러 가운데 하나는 BLISS(1970년)의 것이었으며 1975년 최적화 컴파일러의 디자인에 기술되었다. 1980년대 즈음에 컴파일러를 최적화하는 것은 어셈블리어로 프로그래밍할 필요가 없을 정도로 효율적이었다.

같이 보기 
 JIT 컴파일

외부 링크 
 NULLSTONE 최적화 분류
 최적화 설명서 (Agner Fog이 씀) - x86 프로세서 아키텍처와 낮은 수준의 코드 최적화에 대한 문서
 어셈블리 최적화 조언 (Mark Larson이 씀)

프로그래밍 언어 구현
컴파일러 구성