Argumen instrumentasi Microbenchmark

Konfigurasikan perilaku benchmark Anda dengan menentukan argumen lain untuk alat eksekusi instrumentasi. Argumen ini dapat diterapkan ke konfigurasi Gradle Anda atau ditambahkan langsung saat menjalankan instrumentasi dari command line.

Untuk menyiapkan argumen instrumentasi saat menjalankan benchmark dari Android Studio, lakukan hal berikut:

  1. Edit konfigurasi run dengan mengklik Edit dan memilih konfigurasi yang ingin Anda edit.
    Gambar 1. Edit konfigurasi run
  2. Edit argumen instrumentasi dengan mengklik di samping kolom Instrumentation arguments.
    Gambar 2. Edit argumen instrumentasi.
  3. Klik dan tambahkan argumen instrumentasi yang diperlukan.
    Gambar 3. Tambahkan argumen instrumentasi.

additionalTestOutputDir

Mengonfigurasi tempat laporan benchmark JSON dan hasil profiling akan disimpan di perangkat.

  • Jenis argumen: string jalur file
  • Default: direktori eksternal APK pengujian

androidx.benchmark.dryRunMode.enable

Memungkinkan Anda menjalankan benchmark dalam satu loop untuk memastikan bahwa benchmark berfungsi dengan benar. Anda dapat menggunakannya dengan pengujian reguler sebagai bagian dari verifikasi.

  • Jenis argumen: boolean
  • Default: false

androidx.benchmark.iterations

Mengganti jumlah iterasi target berdasarkan waktu untuk memastikan jumlah pekerjaan yang konsisten. Hal ini biasanya hanya berguna dengan mengaktifkan pembuatan profil untuk membantu memastikan kuantitas pekerjaan yang konsisten dilakukan dalam rekaman aktivitas pembuatan profil saat membandingkan berbagai implementasi atau eksekusi. Dalam skenario lain, hal ini mungkin mengurangi akurasi atau stabilitas pengukuran.

  • Jenis argumen: integer
  • Default: Tidak ditentukan

androidx.benchmark.junit4.SideEffectRunListener

Anda mungkin mendapatkan hasil benchmark yang tidak konsisten jika pekerjaan latar belakang yang tidak terkait dijalankan saat benchmark berjalan.

Untuk menonaktifkan pekerjaan latar belakang selama benchmark, tetapkan jenis argumen instrumentasi listener ke androidx.benchmark.junit4.SideEffectRunListener.

  • Jenis argumen: string
  • Opsi yang tersedia:
    • androidx.benchmark.junit4.SideEffectRunListener
  • Default: Tidak ditentukan

androidx.benchmark.output.enable

Mengaktifkan penulisan file JSON hasil ke penyimpanan eksternal.

  • Jenis argumen: boolean
  • Default: true

androidx.benchmark.profiling.mode

Memungkinkan pengambilan file rekaman aktivitas saat menjalankan benchmark. Lihat opsi yang tersedia di Membuat Profil Microbenchmark.

  • Jenis argumen: string
  • Opsi yang tersedia:
    • MethodTracing
    • StackSampling
    • None
  • Default: None

androidx.benchmark.suppressErrors

Menerima daftar error yang dipisahkan koma agar diubah menjadi peringatan.

  • Jenis argumen: daftar string
  • Opsi yang tersedia:
    • DEBUGGABLE
    • LOW-BATTERY
    • EMULATOR
    • CODE-COVERAGE
    • UNLOCKED
    • SIMPLEPERF
    • ACTIVITY-MISSING
  • Default: daftar kosong

androidx.benchmark.startupMode.enable (Tidak digunakan lagi)

Mengonfigurasi ulang perilaku loop untuk mendukung kode benchmark selama startup. Benchmark dijalankan tanpa melakukan loop warmup untuk 10 pengukuran. Untuk meminimalkan overhead di microbenchmark, rata-rata loop dinonaktifkan.

  • Jenis argumen: boolean
  • Default: false