Microbenchmark 계측 인수

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

Android 스튜디오에서 벤치마크를 실행할 때 계측 인수를 설정하려면 다음을 실행하세요.

  1. Edit을 클릭하고 수정하려는 구성을 선택하여 실행 구성을 수정합니다.
    그림 1. 실행 구성 수정
  2. Instrumentation arguments 필드 옆에 있는 를 클릭하여 계측 인수를 수정합니다.
    그림 2. 계측 인수 수정
  3. 를 클릭하고 필요한 계측 인수를 추가합니다.
    그림 3. 계측 인수 추가

additionalTestOutputDir

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

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

androidx.benchmark.dryRunMode.enable

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

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

androidx.benchmark.iterations

일관된 작업량을 보장하기 위해 시간 기반의 타겟 반복 횟수를 재정의합니다. 이는 일반적으로 여러 구현이나 실행을 비교할 때 프로파일링 트레이스 내에서 일관된 작업량이 실행되도록 하는 프로파일링을 사용 설정한 경우에만 유용합니다. 다른 시나리오에서는 이로 인해 측정의 정확성이나 안정성이 떨어질 수 있습니다.

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

androidx.benchmark.junit4.SideEffectRunListener

벤치마크가 실행되는 동안 관련 없는 백그라운드 작업이 실행되면 일관되지 않은 벤치마크 결과가 발생할 수 있습니다.

벤치마킹 중에 백그라운드 작업을 사용 중지하려면 listener 계측 인수 유형을 androidx.benchmark.junit4.SideEffectRunListener로 설정하세요.

  • 인수 유형: 문자열
  • 사용 가능한 옵션:
    • androidx.benchmark.junit4.SideEffectRunListener
  • 기본값: 지정되지 않음

androidx.benchmark.output.enable

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

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

androidx.benchmark.profiling.mode

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

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

androidx.benchmark.suppressErrors

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

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

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

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

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