Microbenchmark 계측 인수

계측 실행기에 다른 인수를 지정하여 벤치마크 동작을 구성합니다. 인수는 Gradle 구성에 적용하거나 명령줄에서 계측을 실행할 때 직접 추가할 수 있습니다.

Android 스튜디오에서 벤치마크를 실행할 때 계측 인수를 설정하는 방법은 다음과 같습니다.

  1. 실행 구성을 수정합니다.
  2. 계측 인수를 수정합니다.
  3. 필수 계측 인수를 추가합니다.

additionalTestOutputDir

JSON 벤치마크 보고서 및 프로파일링 결과를 저장할 기기 내 위치를 구성합니다.

  • 인수 유형: 파일 경로 문자열
  • 기본값: 테스트 APK의 외부 디렉터리

androidx.benchmark.dryRunMode.enable

벤치마크를 단일 루프로 실행하여 제대로 작동하는지 확인할 수 있습니다. 일반 테스트와 함께 인증 과정의 일부로 사용할 수 있습니다.

  • 인수 유형: 불리언
  • 기본값: false

androidx.benchmark.iterations

일관된 작업량을 보장하기 위해 시간 기반의 타겟 반복 횟수를 재정의합니다. 대개 이 방식은 프로파일링을 사용 설정한 상태로(프로파일링 참고) 서로 다른 구현/실행을 비교할 때, 프로파일링 트레이스 내에서 일관된 작업량 실행을 보장하는 데만 유용합니다. 다른 시나리오에서는 이로 인해 측정의 정확성/안정성이 저하될 수 있습니다.

  • 인수 유형: 정수
  • 기본값: 지정되지 않음

androidx.benchmark.output.enable

결과 JSON 파일을 외부 저장소에 작성할 수 있습니다.

  • 인수 유형: 불리언
  • 기본값: true

androidx.benchmark.profiling.mode

벤치마크를 실행하는 동안 추적 파일을 캡처할 수 있습니다. 사용 가능한 옵션은 벤치마크 프로파일링을 참고하세요.

  • 인수 유형: 문자열
  • 사용 가능한 옵션:
    • MethodTracing
    • StackSampling
    • None
  • 기본값: None

androidx.benchmark.suppressErrors

쉼표로 구분된 오류 목록이 경고로 전환되도록 허용합니다.

  • 인수 유형: 문자열 목록
  • 사용 가능한 옵션:
    • DEBUGGABLE
    • LOW-BATTERY
    • EMULATOR
    • CODE-COVERAGE
    • UNLOCKED
    • SIMPLEPERF
    • ACTIVITY-MISSING
  • 기본값: 빈 목록

androidx.benchmark.startupMode.enable(지원 중단됨)

루프 동작을 다시 구성하여 시작 시 벤치마킹 코드를 지원합니다. 10회 측정의 경우 벤치마크가 준비 루프 없이 실행됩니다. Microbenchmark의 오버헤드를 최소화하기 위해 루프 평균화가 사용 중지됩니다.

  • 인수 유형: 불리언
  • 기본값: false