首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在安卓系统上通过TFLite C++ API使用ARM霓虹灯加速

在安卓系统上通过TFLite C++ API使用ARM霓虹灯加速
EN

Stack Overflow用户
提问于 2020-10-18 08:24:17
回答 1查看 729关注 0票数 0

我正尝试在安卓设备上使用霓虹灯加速进行TFLite推断。虽然对于Java语言来说,这似乎有很好的文档和简单明了的说明,但在开始使用C++应用程序接口时,我需要帮助。我是个新手,所以如果答案是显而易见的,我很抱歉。

TensorFlow Lite库包含了https://github.com/tensorflow/tensorflow/tree/master/tensorflow/lite/kernels中的霓虹灯源代码,但我想知道如何以及在哪里包含和使用它。

设备规格为:处理器八核,2000 MHz,ARM Cortex-A75和ARM Cortex-A53,64位,10纳米。CPU (2x2.0 GHz 360金牌和6x1.7 GHz Kryo 360银牌);GPU Adreno 615。

到目前为止,我尝试过的是:我将build.gradle文件从

代码语言:javascript
复制
android {
    externalNativeBuild {
        cmake {
            path file('CMakeLists.txt')
        }
}

代码语言:javascript
复制
android {
    defaultConfig {
        externalNativeBuild {
            cmake {
                arguments "-DANDROID_ARM_NEON=TRUE"
        }
    }
    externalNativeBuild {
        cmake {
            path file('CMakeLists.txt')
    }
}

然后,推理花了和以前一样长的时间,在推理完成后,我得到了以下错误:

代码语言:javascript
复制
A/libc: Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x753b9d3000 in tid 9935 (m.example.test2), pid 9935 (m.example.test2)
EN

回答 1

Stack Overflow用户

发布于 2020-10-21 15:47:44

您可以选择使用XNNPACK委托,它会主动使用ARM霓虹灯优化内核(如果您的CPU有的话)。

https://blog.tensorflow.org/2020/07/accelerating-tensorflow-lite-xnnpack-integration.html

通过设置boolean标志,使用Java / Obj-C / Swift API启用XNNPACK要容易得多,如博客文章中所述。如果出于某种原因需要直接使用C++,可以这样做:

代码语言:javascript
复制
#include "tensorflow/lite/delegates/xnnpack/xnnpack_delegate.h"

// ...

TfLiteXNNPackDelegateOptions options = TfLiteXNNPackDelegateOptionsDefault();
// options.num_threads = <desired_num_threads>;
tflite::Interpreter::TfLiteDelegatePtr delegate(
    TfLiteXNNPackDelegateCreate(&options),
    [](TfLiteDelegate* delegate) { TfLiteXNNPackDelegateDelete(delegate); });
auto status = interpreter->ModifyGraphWithDelegate(std::move(delegate));
// check on the returned status code ...

另请参阅启用XNNPack委派的how the Java API calls the C++ API internally

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64408596

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档