【问题标题】:What will happen if I try to use GPU delegate under android 8.1如果我尝试在 android 8.1 下使用 GPU 委托会发生什么
【发布时间】:2020-03-20 09:20:03
【问题描述】:

以下是 NNAPI 的系统架构。 enter image description here

NNAPI 适用于 Android 8.1(API 级别 27)或更高版本。 如果我尝试在 android 8.1 下使用 GPU 委托会发生什么?

【问题讨论】:

    标签: android tensorflow gpu tensorflow-lite nnapi


    【解决方案1】:

    Tensorflow 的 GPU 委托未使用 NNAPI(请参阅TFLite documentation)。

    对 Shree 的回答进行了一些更正。

    • NNAPI 将委托给 GPU 或任何其他可用设备,即使在 Android 8.1 中,也取决于 NNAPI 实现的可用性。
    • ANeuralNetworksCompilation_createForDevices() API 用于当您想要处理一组特定设备时,如果您使用 ANeuralNetworksCompilation_create(),设备选择将由 NNAPI 完成。
    • 两种不同 API(createForDevicescreate)之间的选择由委托创建中的 AcceleratorName 选项控制。

    【讨论】:

    • 我真的找不到任何解释使用 .acceleratorName 的文档参考,我从你所说的理解是可以使用这个设置 NNAPI 的硬件运行时(gpu/dsp) ?
    【解决方案2】:

    NNAPI 适用于所有运行 Android 8.1(API 级别 27)或更高版本的 Android 设备

    Oreo MR1(8.1.0)

    上只有 CPU fallback 可用

    请参考以下关于 Pixel 2 设备 (Android 8.1) 上使用 NNAPI 的 TFLite 演示应用程序性能的讨论 - https://github.com/tensorflow/tensorflow/issues/19317 - 这声称性能没有改善,因为没有 GPU 和 DSP NN 驱动程序。所以当 NNAPI 被调用时,会回退到 CPU

    由于仅 API 级别 29 (Android 10),NNAPI 支持 ANeuralNetworksCompilation_createForDevices() - 这将创建一个 ANeuralNetworksCompilation 来编译指定模型集的给定模型设备(GPU 和 DSP

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-01
      • 1970-01-01
      • 2019-02-13
      • 2011-06-02
      • 1970-01-01
      • 1970-01-01
      • 2011-11-13
      • 1970-01-01
      相关资源
      最近更新 更多