Bencher로 빌드 시간 추적하는 방법
Bencher는 가장 인기 있는 벤치마킹 하네스를 기본으로 지원합니다. 그러나 때로는 실행 파일의 컴파일 시간과 같이 결과물을 빌드하는 데 걸리는 시간을 측정하고 싶을 때가 있습니다. 다행히도 Bencher는 빌드 시간 추적을 지원합니다. 빌드 시간을 추적하는 가장 쉬운 방법은 --build-time
플래그를 사용하여 bencher run
CLI 서브커맨드를 사용하는 것입니다. 내부적으로는, bencher run
이 결과를 Bencher Metric Format (BMF) JSON으로 출력합니다. 따라서 the json
adapter을 명시적으로 사용하는 것이 좋은 습관입니다.
당신이 이진 파일을 구축하는 ./my_build_script.sh
위치에 스크립트를 가지고 있다면,
bencher run
과 json
어댑터를 사용하여 이진 파일의 빌드 시간을 추적할 수 있습니다.
--build-time
플래그는 벤치마크 명령어가 필요합니다.
당신의 빌드 스크립트가 완료되는 데 87.0
초가 걸렸다면, 생성된 BMF JSON은 다음과 같이 보일 것입니다:
벤치마크 이름은 /bin/sh -c ./my_build_script.sh
입니다.
이는 우리의 명령이 단일 인수이기 때문에
bencher run
이 기본적으로 쉘 형식으로 실행되기 때문입니다.
대안으로 exec 형식의 사용을 강제화하려면,
여러 인수를 제공하거나 --exec
플래그를 사용할 수 있습니다.
이 exec 형식의 빌드가 86.98
초가 걸렸다면,
생성된 BMF JSON은 다음과 같이 보일 것입니다:
이제 벤치마크 이름은 단순히 ./my_build_script.sh
입니다.
./my_build_script.sh
객체에는 build-time
키가 포함되어 있습니다.
build-time
은 내장된 빌드 시간 측정를 위한 슬러그입니다.
빌드 시간 측정은 모든 프로젝트에 기본적으로 생성되지 않습니다.
그러나 빌드 시간 측정을 사용하면,
당신의 프로젝트에 자동으로 생성됩니다.
빌드 시간 측정 객체는
초 단위의 빌드 시간 value
를 가진 메트릭을 포함하며, 예시로 87.0
과 86.98
이 있습니다.
빌드 시간은 항상 소수점 둘째 자리까지 반올림됩니다.
즉, 42.666666
과 같은 긴 소수는 절대 되지 않습니다.
파일 크기 추적
귀하의 결과물의 파일 크기를 추적하려고 할 수 있습니다,
이를 빌드하는 데 걸리는 시간을 추적하는 것과 함께.
bencher run
은(는) 빌드 시간과 파일 크기를 모두 추적할 수 있도록 지원합니다.
귀하의 ./my_build_script.sh
빌드 스크립트의 출력물이
경로 ./path/to/my_binary
에 있는 바이너리였다고 가정하면,
다음 명령어로 컴파일 시간과 바이너리 크기를 모두 추적할 수 있을 것입니다:
만약 my_binary
의 크기가 42
바이트였다면,
생성된 BMF JSON은 다음과 같을 것입니다:
🐰 축하합니다! 빌드 시간을 추적하는 방법을 학습했습니다! 🎉