컴파일러
생성한 기계어의 짧은 나열을 작은 창으로 보면서, 불필요한 명령의 조합을 더 좋은 명령으로 대체하는 최적화를 무엇이라고 하는가?
- A피프홀 최적화
- B링크 시 최적화
- C프로파일을 이용한 최적화
정답과 해설 보기
정답: A. 피프홀 최적화
피프홀 최적화는 작은 구멍(피프홀)으로 들여다보듯 연속된 몇 개의 명령만 보고, 낭비를 찾아 대체하는 최적화입니다. 예를 들어 값을 메모리에 쓴 직후에 같은 곳에서 읽는 명령을 생략하거나, 0을 더하는 명령을 지우거나, 두 개의 명령을 하나의 명령으로 합칩니다. 코드 생성 후에 하는 경우가 많으며 단순하지만 효과가 있는 최적화입니다. 링크 시 최적화는 프로그램 전체를, 프로파일을 이용한 최적화는 실행 기록을 사용하여 최적화합니다.
- A. 올바릅니다. 몇 개 명령의 창으로 낭비를 찾아 대체합니다.
- B. 링크 시 최적화는 프로그램 전체를 한꺼번에 최적화합니다.
- C. PGO는 실행 기록을 사용하여 최적화합니다.