C++ Profiling

프로파일링은 추측을 측정 가능한 병목으로 바꾼다

성능 개선은 코드를 먼저 고치는 일이 아니라, 같은 조건에서 느린 축을 확인하고 가장 큰 비용부터 줄이는 피드백 루프입니다.

추측 최적화 느릴 것 같은 코드를 먼저 바꾼다

실제 병목이 아니면 복잡도만 늘고 성능은 그대로일 수 있습니다.

프로파일링 루프 측정값으로 병목 위치와 개선 우선순위를 정한다

CPU 시간, 메모리 할당, I/O 대기처럼 비용 축을 나눠 확인합니다.

1

측정 조건 고정

입력 데이터, 릴리스 빌드, 실행 시간을 맞춰 기준선을 만듭니다.

2

병목 축 분류

CPU, 메모리, I/O, lock 대기 중 어디에 비용이 몰리는지 봅니다.

3

도구 선택

perf, gprof, Valgrind, Instruments처럼 지표에 맞는 화면을 엽니다.

4

수정 후 재측정

가설 하나만 바꾸고 같은 조건에서 다시 측정해 효과를 확인합니다.