По мере развития мобильных моделей ИИ разработчикам LiteRT необходимо максимизировать производительность. NPU становятся все более важными для ИИ на устройстве, предлагая меньшую задержку, более высокую пропускную способность и сниженное энергопотребление по сравнению с центральными и графическими процессорами. Использование Qualcomm® NPU через Qualcomm AI Engine Direct Delegate значительно повышает производительность мобильных приложений ИИ на устройствах Snapdragon. В сотрудничестве с Qualcomm команда Google AI Edge продемонстрирует интеграцию этого делегата в приложения Android, подчеркнув прирост производительности по сравнению с традиционными процессорами и показав, как начать работу.
Прямой делегат Qualcomm AI Engine
Qualcomm AI Engine Direct Delegate позволяет пользователям запускать модели LiteRT с использованием Qualcomm AI Stack. Использование Qualcomm AI Engine Direct Delegate необходимо для запуска вывода на NPU для вашей модели LiteRT на устройстве. Поддерживаемые устройства включают:
- Snapdragon 8 1-го поколения (SM8450)
- Snapdragon 8 второго поколения (SM8550)
- Snapdragon 8 3-го поколения (SM8650)
- Snapdragon 8 Элит (SM8750)
- и многое другое
Приложения на этих устройствах получат преимущества от стека искусственного интеллекта Qualcomm, ориентируясь на нейронный процессор, который обеспечивает наилучшую производительность для моделей искусственного интеллекта.
Как использовать NPU с помощью Qualcomm AI Engine Direct Delegate
Сначала загрузите Qualcomm AI Engine Direct Delegate, доступный на Maven Central . Для настройки делегата в приложении Android Java необходимы следующие зависимости:
dependencies {
implementation 'com.qualcomm.qti:qnn-runtime:2.34.0'
implementation 'com.qualcomm.qti:qnn-litert-delegate:2.34.0' }
Чтобы использовать делегат:
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);
Пример приложения Android, использующего QNN Delegate для LiteRT, можно найти в разделе Примеры приложений Android Qualcomm AI Hub.
Преимущества производительности
На устройствах с Snapdragon SOC с процессором Qualcomm® Hexagon Tensor большинство моделей работают значительно быстрее по сравнению с GPU и CPU. HTP также является более энергоэффективным процессором для вычислений нейронных сетей. MobileNetv2, модель с открытым исходным кодом, предварительно оптимизированная как часть AI Hub Models, использовалась в качестве образца для этого анализа производительности.
Устройство | NPU (делегат QNN от HTP) | Графический процессор (ГПv2) | ЦП (XNNPACK) |
---|---|---|---|
Самсунг С25 | 0,3 мс | 1,8 мс | 2.8мс |
Самсунг С24 | 0,4 мс | 2.3мс | 3,6 мс |
Самсунг С23 | 0,6 мс | 2.7мс | 4.1мс |
Устройство | NPU (делегат QNN от HTP) | Графический процессор (ГПv2) | ЦП (XNNPACK) |
---|---|---|---|
Самсунг С25 | 24,9 мс | 43мс | 481.7мс |
Самсунг С24 | 29,8 мс | 52,6 мс | 621.4мс |
Самсунг С23 | 43,7 мс | 68.2мс | 871.1мс |
Продукция под брендами Snapdragon и Qualcomm является продукцией компании Qualcomm Technologies, Inc. и/или ее дочерних компаний.
Что дальше?
Оставайтесь с нами, чтобы получать еще больше интересных обновлений о бесперебойном использовании нейронных процессоров для разработки приложений ИИ с помощью LiteRT Next !