Les outils de benchmark LiteRT mesurent et calculent des statistiques pour les métriques de performances importantes suivantes :
- Délai d'initialisation
- Temps d'inférence de l'état de préchauffage
- Temps d'inférence de l'état stable
- Utilisation de la mémoire pendant l'initialisation
- Utilisation globale de la mémoire
L'outil de benchmark CompiledModel est fourni sous forme de binaire C++, benchmark_model. Vous pouvez exécuter cet outil à partir d'une ligne de commande shell sur Android, Linux, macOS, Windows et les appareils intégrés avec l'accélération GPU activée.
Télécharger les binaires de benchmark prédéfinis
Téléchargez les binaires de ligne de commande précompilés de la version Nightly en suivant les liens ci-dessous :
Compiler le binaire du benchmark à partir de la source
Vous pouvez créer le binaire de référence à partir de la source.
bazel build -c opt //litert/tools:benchmark_model
Pour compiler avec la chaîne d'outils Android NDK, vous devez d'abord configurer l'environnement de compilation en suivant ce guide ou utiliser l'image Docker comme décrit dans ce guide.
bazel build -c opt --config=android_arm64 \
//litert/tools:benchmark_model
Exécuter un benchmark
Pour exécuter des benchmarks, exécutez le binaire à partir du shell.
path/to/downloaded_or_built/benchmark_model \
--graph=your_model.tflite \
--num_threads=4
Vous trouverez d'autres options de paramètres dans le code source de benchmark_model.
Évaluer l'accélération GPU
Ces binaires prédéfinis incluent l'accélérateur GPU LiteRT. Cette plate-forme accepte
- Android : OpenCL
- Linux : OpenCL et WebGPU (avec Vulkan)
- macOS : Metal
- Windows : WebGPU (avec Direct3D)
Pour utiliser l'accélérateur GPU, transmettez l'indicateur --use_gpu=true.
Profiler les opérations de modèle
Le binaire du modèle de référence vous permet également de profiler les opérations du modèle et d'obtenir les temps d'exécution de chaque opérateur. Pour ce faire, transmettez l'indicateur --use_profiler=true à benchmark_model lors de l'appel.