Konfigurieren Sie das Verhalten Ihrer Benchmarks. Geben Sie dazu für den Instrumentierungs-Runner unterschiedliche Argumente an. Diese können entweder auf Ihre Gradle-Konfiguration angewendet oder direkt hinzugefügt werden, wenn die Instrumentierung über die Befehlszeile ausgeführt wird.
So richten Sie Instrumentierungsargumente ein, wenn die Benchmarks über Android Studio ausgeführt werden:
- Klicken Sie auf Bearbeiten und wählen Sie die zu bearbeitende Konfiguration aus, um die Ausführungskonfiguration zu bearbeiten.
- Klicken Sie neben dem Feld Instrumentierungsargumente auf , um Instrumentierungsargumente zu bearbeiten.
- Klicken Sie auf und fügen Sie das erforderliche Instrumentierungsargument hinzu.
zusätzlicheTestOutputDir
Konfiguriert, wo JSON-Benchmark-Berichte und Profilerstellungsergebnisse auf dem Gerät gespeichert werden.
- Argumenttyp: Dateipfadstring
- Standardeinstellung: Externes Verzeichnis des Test-APKs
androidx.Benchmark.dryRunMode.enable
Damit können Sie Benchmarks in einer einzelnen Schleife ausführen, um zu prüfen, ob sie ordnungsgemäß funktionieren. Sie können es mit regelmäßigen Tests im Rahmen der Überprüfung verwenden.
- Argumenttyp:boolescher Wert
- Standardeinstellung:
false
androidx.Benchmark.iterations
Überschreibt die Anzahl der zeitgesteuerten Zieliterationen, um für eine konsistente Arbeitsmenge zu sorgen. Dies ist in der Regel nur nützlich, wenn die Profilerstellung aktiviert ist. So lässt sich beim Vergleich verschiedener Implementierungen oder Ausführungen ein konsistentes Arbeitsvolumen in einem Profilerstellungs-Trace ausführen. In anderen Szenarien verringert dies wahrscheinlich die Genauigkeit oder Stabilität der Messungen.
- Argumenttyp:Ganzzahl
- Standardeinstellung: keine Angabe
androidx.Benchmark.junit4.SideEffectRunListener
Wenn beim Ausführen der Benchmark irrelevante Hintergrundarbeiten ausgeführt werden, kann es zu inkonsistenten Benchmark-Ergebnissen kommen.
Wenn Sie die Hintergrundarbeit während des Benchmarking deaktivieren möchten, setzen Sie den Argumenttyp listener
auf androidx.benchmark.junit4.SideEffectRunListener
.
- Argumenttyp: String
- Verfügbare Optionen:
androidx.benchmark.junit4.SideEffectRunListener
- Standardeinstellung: keine Angabe
androidx.Benchmark.output.enable
Ermöglicht das Schreiben der JSON-Ergebnisdatei in einen externen Speicher.
- Argumenttyp:boolescher Wert
- Standardeinstellung:
true
androidx.Benchmark.profiling.mode
Ermöglicht das Erfassen von Trace-Dateien während der Ausführung der Benchmarks. Informationen zu den verfügbaren Optionen finden Sie unter Profil für eine MicroBenchmark erstellen.
- Argumenttyp: String
- Verfügbare Optionen:
MethodTracing
StackSampling
None
- Standardeinstellung:
None
androidx.Benchmark.suppressErrors
Akzeptiert eine durch Kommas getrennte Liste von Fehlern, die in Warnungen umgewandelt werden sollen.
- Argumenttyp: Liste von Strings
- Verfügbare Optionen:
DEBUGGABLE
LOW-BATTERY
EMULATOR
CODE-COVERAGE
UNLOCKED
SIMPLEPERF
ACTIVITY-MISSING
- Standardeinstellung: eine leere Liste
androidx.Benchmark.startupMode.enable (eingestellt)
Rekonfiguriert das Schleifenverhalten neu, um beim Start Benchmarking-Code zu unterstützen. Die Benchmarks werden ohne Aufwärmschleife für 10 Messungen ausgeführt. Die Schleifen-Durchschnittsermittlung ist deaktiviert, um den Aufwand in Mikro-Benchmarks zu minimieren.
- Argumenttyp:boolescher Wert
- Standardeinstellung:
false
Empfehlungen für dich
- Hinweis: Der Linktext wird angezeigt, wenn JavaScript deaktiviert ist.
- MacroBenchmark-Instrumentierungsargumente
- Profil für eine Mikro-Benchmark erstellen
- Baseline-Profile erstellen {:#create-profile-rules}