본문 바로가기

Tect.tip/C++

CFLAGS 를 사용하여 컴파일한 코드를 최적화 하는 방법

CFLAGS는 C/C++ 코드를 컴파일할 때 빌드 시스템에 컴파일러 옵션을 전달할 때 활용하는 환경 변수 중 하나입니다.

그중 -O 변수는 최적화의 전체 수준을 제어합니다.

7가지의 -O 레벨 설정 -O0, -O1, -O2, -O3, -Os, -Og, -Ofast 있습니다.

  • O0: 최적화를 완전히 끄고 컴파일 합니다.
  • O1: 이 레벨은 매우 기본적인 최적화를 수행합니다.
  • O2: -O1에서 한 단계 상승합니다. -O1 플래그로 활성화 한 플래그보다 더 많은 플래그를 활성화 합니다.
  • O3: 가능한 가장 높은 최적화 레벨입니다. 컴파일 시간과 메모리 사용에 있어 그 이상의 최적화를 활성화합니다.
  • Os: 코드 크기를 최적화 합니다.
  • Og: 디버깅 경험을 최적화 합니다.
  • Ofast: . 이 옵션은 엄격한 표준 준수를 무시하고 컴파일 합니다.

사용법

makefile에서 CFLAGS 에 -O 변수를 설정합니다.

Untitled

Optimize Options (Using the GNU Compiler Collection (GCC))

'Tect.tip > C++' 카테고리의 다른 글

[install] gcc 설치 in ubuntu  (0) 2022.02.12
C++ opencv 외부폰트 및 한글 적용  (0) 2022.02.11
CPP 에서 Numpy 사용하기  (0) 2022.02.11