실행하지 않고 추정하기
대상 CPU 모델과 명령 시퀀스를 지정해 처리량이나 사이클당 명령 수를 추정한다. 실제 응용을 실행하며 시간과 스택을 수집하는 프로파일러와는 방식이 다르다. 특정 명령 구간의 잠재적인 자원 제약을 살펴보는 도구다.
모델이 결과를 결정
LLVM에 해당 프로세서의 스케줄링 모델이 있어야 분석할 수 있다. 명령 지연과 사용 가능한 실행 자원 등의 정보가 추정에 영향을 준다. 모델의 정확도가 부족하면 실제 장치와 보고 결과 사이에도 차이가 생길 수 있다.
비교와 실측의 역할
최적화 전후 명령 구간을 같은 CPU 설정에서 비교하는 데 활용할 수 있다. 하지만 프로그램 전체의 입출력과 운영체제, 실제 데이터 접근까지 대신 측정한 결과는 아니다. 중요한 개선은 실제 워크로드 측정과 함께 검토한다.