태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

지니넷

gcc 최적화 옵션

2007.10.31 17:31 : 개발
========================================================================
최적화 옵션     의미
========================================================================
-O0(기본값)    최적화를 수행하지 않는다.
------------------------------------------------------------------------
-O            코드 크기와 실행 시간을 줄이는 것을 제외한 최적화는 실행하지 않는다.
-O1
------------------------------------------------------------------------
-O2           메모리 공간과 속도를 희생하지 않는 범위내의 모든 최적화를 수행한다.
loop unrolling과 function inlining에 대한 최적화를 수행하지 않는다.
------------------------------------------------------------------------
-O3           -O2 최적화에 인라인 함수와 레지스터에 대한 최적화를 추가로 수행한다.
------------------------------------------------------------------------
-Os           -O2 최적화 기능을 사용하지만, 코드 크기를 증가시키는 최적화는 생략한다.
========================================================================

링크1 링크2


* 커널 컴파일 시 최적화 옵션 -O2만 사용하는 이유
커널은 인라인 함수를 많이 사용하고 있다. -O3 최적화는 컴파일러가 판단해서 인라인을 인라인이 빠른 것은 인라인으로, 함수가 빠른 것은 함수로 바꿔버린다. 커널은 최적화된 수행 속도를 위해 의도적으로 인라인 함수를 사용하고 있어서 컴파일러에 의해서 자의적으로 함수로 바뀌는 것을 막기 위해 -O2 옵션을 사용한다.



Posted by 지니넷 Trackback 0 Comment 0


티스토리 툴바