측정 구간의 설계
준비 작업과 반복할 코드를 나누어 무엇의 비용을 측정할지 정한다. 데이터 생성과 자원 정리까지 포함할지에 따라 같은 함수의 측정값도 달라질 수 있다. 필요한 인자를 바꾸어 입력 규모에 따른 성능을 살펴볼 수 있다.
반복과 환경 영향
최소 실행 시간과 반복, 워밍업 등을 설정해 측정 조건을 구성한다. 워밍업 자료는 본 측정과 구분할 수 있다. CPU 시간과 실제 경과 시간도 다른 의미이므로 어떤 기준을 보고 있는지 명시해야 결과를 비교하기 쉽다.
최적화와 결과 검토
컴파일러가 계산을 불필요하다고 판단해 제거하지 않도록 제공 기능을 적절히 사용한다. 빠른 확인용 단일 실행은 안정적인 성능 평가를 대신하지 않는다. 동일한 입력과 빌드 조건에서 여러 결과를 보고 실제 응용의 작업 부하와도 연결해 해석한다.
관련 문서
Nanobench / Picobench / Celero / GoogleTest