À mesure que les modèles d'IA mobile se développent, les développeurs LiteRT doivent maximiser les performances. Les processeurs NPUs sont de plus en plus essentiels pour l'IA sur l'appareil, car ils offrent une latence plus faible, un débit plus élevé et une consommation d'énergie réduite par rapport aux CPU et aux GPU. L'exploitation des NPU Qualcomm® via le délégué direct du moteur d'IA Qualcomm améliore considérablement les performances des applications d'IA mobile sur les appareils Snapdragon. En collaboration avec Qualcomm, l'équipe Google AI Edge présentera l'intégration de ce délégué dans les applications Android, en mettant en avant les gains de performances par rapport aux processeurs traditionnels et en montrant comment se lancer.
Délégué direct du moteur d'IA Qualcomm
Le délégué direct du moteur d'IA Qualcomm permet aux utilisateurs d'exécuter des modèles LiteRT à l'aide de la pile d'IA Qualcomm. L'utilisation du délégué direct Qualcomm AI Engine est essentielle pour exécuter l'inférence sur le NPU pour votre modèle LiteRT sur l'appareil. Les appareils compatibles incluent les suivants:
- Snapdragon 8 Gen 1 (SM8450)
- Snapdragon 8 Gen 2 (SM8550)
- Snapdragon 8 Gen 3 (SM8650)
- Snapdragon 8 Elite (SM8750)
- et plus encore
Les applications de ces appareils bénéficieront de la pile d'IA Qualcomm en ciblant la NPU, qui offre les meilleures performances pour les modèles d'IA.
Exploiter le NPU à l'aide du délégué direct Qualcomm AI Engine
Commencez par télécharger le délégué direct Qualcomm AI Engine disponible sur Maven Central. Pour configurer le délégué dans une application Java Android, les dépendances suivantes sont nécessaires:
dependencies {
implementation 'com.qualcomm.qti:qnn-runtime:2.34.0'
implementation 'com.qualcomm.qti:qnn-litert-delegate:2.34.0' }
Pour utiliser le délégué:
try {
// Created default Options
QnnDelegate.Options options = new QnnDelegate.Options();
// Set the backend and library path
options.setBackendType(QnnDelegate.Options.BackendType.HTP_BACKEND);
options.setSkelLibraryDir(activity.getApplicationInfo().nativeLibraryDir);
// Create the Delegate instance.
qnnDelegate = new QnnDelegate(options);
tfliteOptions.addDelegate(qnnDelegate);
}
catch (UnsupportedOperationException e) {
// Delegate creation failed
}
tfliteInterpreter = new Interpreter(tfliteModel, tfliteOptions);
Pour voir un exemple d'application Android qui utilise le délégué QNN pour LiteRT, consultez les applications exemple Android du hub Qualcomm AI.
Avantages en termes de performances
Sur les appareils équipés de SOC Snapdragon avec le processeur Qualcomm® Hexagon Tensor, la plupart des modèles sont beaucoup plus rapides que le GPU et le CPU. Le HTP est également un processeur plus économe en énergie pour le calcul de réseaux de neurones. MobileNetv2, un modèle Open Source pré-optimisé dans les modèles AI Hub, a été utilisé comme exemple pour cette analyse des performances.
Appareil | NPU (délégué QNN pour HTP) | GPU (GPUv2) | CPU (XNNPACK) |
---|---|---|---|
Samsung S25 | 0,3 ms | 1,8 ms | 2,8 ms |
Samsung S24 | 0,4 ms | 2,3 ms | 3,6 ms |
Samsung S23 | 0,6 ms | 2,7 ms | 4,1 ms |
Appareil | NPU (délégué QNN pour HTP) | GPU (GPUv2) | CPU (XNNPACK) |
---|---|---|---|
Samsung S25 | 24,9 ms | 43 ms | 481,7 ms |
Samsung S24 | 29,8 ms | 52,6 ms | 621,4 ms |
Samsung S23 | 43,7 ms | 68,2 ms | 871,1 ms |
Les produits Snapdragon et Qualcomm sont des produits de Qualcomm Technologies, Inc. et/ou de ses filiales.
Étape suivante
Nous vous communiquerons d'autres informations intéressantes sur l'utilisation fluide des processeurs NPUs pour le développement d'applications d'IA avec LiteRT Next.