프로파일링은 증상에서 지표와 도구를 고른다
도구 이름부터 고르는 것이 아니라, 먼저 느린 증상을 분류하고 그 증상을 설명하는 지표를 측정한다.
| 증상 | 먼저 볼 지표 | 맞는 도구 | 다음 조치 |
|---|---|---|---|
| CPU가 바쁘다 | time, call graph, hotspot | perf, gprof, VTune | 가장 큰 함수 하나만 바꿔 재측정 |
| 메모리가 늘어난다 | allocation, lifetime, leak | Valgrind, ASan, LSan | 소유권과 컨테이너 재사용 정리 |
| CPU는 남는데 느리다 | latency, wait time, queue | trace, log, timeline | I/O, lock, 버퍼링 범위 축소 |
1. 기준선수정 전 입력과 실행 시간을 보관한다.
2. 가설 하나알고리즘, 할당, 대기 중 하나만 바꾼다.
3. 같은 조건동일 데이터와 빌드 옵션으로 다시 측정한다.
4. 정확성 확인성능 숫자와 테스트 결과를 함께 본다.
A급 프로파일링 다이어그램의 핵심은 도구 나열이 아니라, 증상 -> 지표 -> 도구 -> 재측정의 판단 경로가 한눈에 보이는 것이다.