Mit den LiteRT-Benchmark-Tools werden Statistiken für die folgenden wichtigen Leistungsmesswerte gemessen und berechnet:
- Initialisierungszeit
- Inferenzzeit des Warm-up-Zustands
- Inferenzzeit des stabilen Zustands
- Arbeitsspeichernutzung während der Initialisierungszeit
- Gesamte Arbeitsspeichernutzung
Das CompiledModel-Benchmarktool wird als C++-Binärdatei benchmark_model bereitgestellt. Sie können dieses Tool über eine Shell-Befehlszeile auf Android-, Linux-, macOS-, Windows- und eingebetteten Geräten ausführen, auf denen die GPU-Beschleunigung aktiviert ist.
Vordefinierte Benchmark-Binärdateien herunterladen
Laden Sie die nächtlichen vorkompilierten Befehlszeilen-Binärdateien über die folgenden Links herunter:
Benchmark-Binärdatei aus dem Quellcode erstellen
Sie können die Benchmark-Binärdatei aus dem Quellcode erstellen.
bazel build -c opt //litert/tools:benchmark_model
Wenn Sie mit der Android NDK-Toolchain erstellen möchten, müssen Sie zuerst die Build-Umgebung einrichten. Folgen Sie dazu dieser Anleitung oder verwenden Sie das Docker-Image, wie in dieser Anleitung beschrieben.
bazel build -c opt --config=android_arm64 \
//litert/tools:benchmark_model
Benchmark ausführen
Führen Sie die Binärdatei über die Shell aus, um Benchmarks auszuführen.
path/to/downloaded_or_built/benchmark_model \
--graph=your_model.tflite \
--num_threads=4
Weitere Parameteroptionen finden Sie im Quellcode von benchmark_model.
GPU-Beschleunigung benchmarken
Diese vorkompilierten Binärdateien enthalten den LiteRT-GPU-Beschleuniger. Unterstützt
- Android: OpenCL
- Linux: OpenCL und WebGPU (unterstützt von Vulkan)
- macOS: Metal
- Windows: WebGPU (unterstützt von Direct3D)
Um den GPU-Beschleuniger zu verwenden, übergeben Sie das Flag --use_gpu=true.
Modellvorgänge profilieren
Mit der Binärdatei des Benchmark-Modells können Sie auch Modellvorgänge profilieren und die Ausführungszeiten der einzelnen Operatoren abrufen. Übergeben Sie dazu das Flag --use_profiler=true an benchmark_model, wenn Sie es aufrufen.