利用 Qualcomm NPU 通过 LiteRT 进行移动 AI 开发

随着移动 AI 模型不断发展,LiteRT 开发者需要最大限度地提升性能。与 CPU 和 GPU 相比,NPU 对设备端 AI 变得越来越重要,因为它可以缩短延迟时间、提高吞吐量并降低功耗。通过 Qualcomm AI Engine Direct Delegate 利用 Qualcomm® NPU 可显著提升 Snapdragon 设备上的移动 AI 应用性能。Google AI Edge 团队将与 Qualcomm 合作,演示如何将此代理集成到 Android 应用中,重点介绍与传统处理器相比性能提升情况,并展示如何开始使用。

Qualcomm AI Engine 直接委托

借助 Qualcomm AI Engine Direct Delegate,用户可以使用 Qualcomm AI Stack 运行 LiteRT 模型。如需在设备端 NPU 上针对 LiteRT 模型运行推理,使用 Qualcomm AI Engine Direct Delegate 至关重要。受支持的设备包括:

  • Snapdragon 8 Gen 1 (SM8450)
  • Snapdragon 8 Gen 2 (SM8550)
  • Snapdragon 8 Gen 3 (SM8650)
  • Snapdragon 8 Elite (SM8750)
  • 和更多

这些设备上的应用通过定位 NPU(可为 AI 模型提供最佳性能),可受益于 Qualcomm AI 栈。

如何使用 Qualcomm AI Engine Direct Delegate 利用 NPU

首先,下载 Maven Central 上提供的 Qualcomm AI Engine Direct Delegate。如需在 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);

如需查看使用 LiteRT 的 QNN 委托的 Android 应用示例,请参阅 Qualcomm AI Hub 的 Android 示例应用

性能优势

在搭载 Snapdragon SOC 和 Qualcomm® Hexagon Tensor Processor 的设备上,与 GPU 和 CPU 相比,大多数模型的运行速度明显更快。HTP 也是用于神经网络计算的能效更高的处理器。在本次性能分析中,我们使用了 MobileNetv2(一个在 AI Hub 模型中预优化的开源模型)作为示例。

设备 NPU(HTP 的 QNN 代理) GPU (GPUv2) CPU (XNNPACK)
Samsung S25 0.3 毫秒 1.8 毫秒 2.8 毫秒
Samsung S24 0.4 毫秒 2.3 毫秒 3.6 毫秒
Samsung S23 0.6 毫秒 2.7 毫秒 4.1 毫秒
设备 NPU(HTP 的 QNN 代理) GPU (GPUv2) CPU (XNNPACK)
Samsung S25 24.9 毫秒 43 毫秒 481.7 毫秒
Samsung S24 29.8 毫秒 52.6 毫秒 621.4 毫秒
Samsung S23 43.7 毫秒 68.2 毫秒 871.1 毫秒

Snapdragon 和 Qualcomm 品牌产品是 Qualcomm Technologies, Inc. 及/或其子公司的产品。

后续步骤

敬请关注有关如何使用 LiteRT Next 无缝地利用 NPU 进行 AI 应用开发的更多精彩动态!