Da mobile KI-Modelle immer größer werden, müssen LiteRT-Entwickler die Leistung maximieren. NPUs sind für On-Device-KI immer wichtiger, da sie im Vergleich zu CPUs und GPUs eine geringere Latenz, einen höheren Durchsatz und einen geringeren Energieverbrauch bieten. Die Nutzung von Qualcomm®-NPUs über die Qualcomm AI Engine Direct Delegate verbessert die Leistung mobiler KI-Apps auf Snapdragon-Geräten erheblich. In Zusammenarbeit mit Qualcomm zeigt das Google AI Edge-Team, wie diese Delegation in Android-Apps eingebunden wird. Dabei werden Leistungssteigerungen im Vergleich zu herkömmlichen Prozessoren hervorgehoben und der Einstieg veranschaulicht.
Qualcomm AI Engine Direct Delegate
Mit der Qualcomm AI Engine Direct Delegate können Nutzer LiteRT-Modelle mit dem Qualcomm AI Stack ausführen. Die Verwendung der Qualcomm AI Engine Direct Delegate ist erforderlich, um die Inferenz für Ihr LiteRT-Modell auf dem Gerät auf der NPU auszuführen. Zu den unterstützten Geräten gehören:
- Snapdragon 8 Gen 1 (SM8450)
- Snapdragon 8 Gen 2 (SM8550)
- Snapdragon 8 Gen 3 (SM8650)
- Snapdragon 8 Elite (SM8750)
- und mehr
Anwendungen auf diesen Geräten profitieren vom Qualcomm AI Stack, da sie auf die NPU ausgerichtet sind, die die beste Leistung für KI-Modelle bietet.
NPU mit Qualcomm AI Engine Direct Delegate nutzen
Laden Sie zuerst den Qualcomm AI Engine Direct Delegate herunter, der auf Maven Central verfügbar ist. Um den Delegierten in einer Android-Java-Anwendung einzurichten, sind die folgenden Abhängigkeiten erforderlich:
dependencies {
implementation 'com.qualcomm.qti:qnn-runtime:2.34.0'
implementation 'com.qualcomm.qti:qnn-litert-delegate:2.34.0' }
So verwenden Sie den Delegate:
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);
Ein Beispiel für eine Android-App, die den QNN-Delegierten für LiteRT verwendet, finden Sie in den Android-Beispiel-Apps des Qualcomm AI Hub.
Leistungsvorteile
Auf Geräten mit Snapdragon-SOCs mit dem Qualcomm® Hexagon Tensor-Prozessor sind die meisten Modelle im Vergleich zu GPU und CPU deutlich schneller. Der HTP ist außerdem ein energieeffizienterer Prozessor für die Berechnung von neuronalen Netzwerken. MobileNetv2, ein Open-Source-Modell, das im Rahmen der AI Hub-Modelle vorab optimiert wurde, wurde als Beispiel für diese Leistungsanalyse verwendet.
Gerät | NPU (QNN-Delegierter für 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 |
Gerät | NPU (QNN-Delegierter für 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 |
Produkte mit der Marke Snapdragon und Qualcomm sind Produkte von Qualcomm Technologies, Inc. und/oder seinen Tochtergesellschaften.
Weitere Informationen
Weitere spannende Updates zur nahtlosen Nutzung von NPUs für die Entwicklung von KI-Anwendungen mit LiteRT Next folgen bald.