使用bazel从源构建tensorflow lite时如何控制霓虹灯的使用

时间:2018-07-28 01:13:53

标签: tensorflow arm bazel neon tensorflow-lite

在/tensorflow/contrib/lite/build_def.bzl中,代码指定要使用的优化标志:

def tflite_copts():
"""Defines compile time flags."""
copts = [
    "-DFARMHASH_NO_CXX_STRING",
] + select({
    str(Label("//tensorflow:android_arm64")): [
        "-std=c++11",
        "-O3",
    ],
    str(Label("//tensorflow:android_arm")): [
        "-mfpu=neon",
        "-mfloat-abi=softfp",
        "-std=c++11",
        "-O3",
    ],

当使用下面的bazel命令为armeabi-v7a构建.so文件时,在select的第二部分中删除了“ -mfpu = neon”时,速度上显然存在差异。

bazel build --cxxopt='--std=c++11' 
//tensorflow/contrib/lite/java:tensorflowlite \
--crosstool_top=//external:android/crosstool \
--host_crosstool_top=@bazel_tools//tools/cpp:toolchain \
--cpu=armeabi-v7a

但是,当构建arm64-v8a时,我认为使用的标志将是select的第一部分中指定的标志,即“ -std = c ++ 11”和“ -O3”。为什么没有指定“ -mfpu = neon”?我尝试添加它,但速度没有差别。

我如何控制是否对arm64-v8a使用氖气?

0 个答案:

没有答案