저는 benchmark_model을 사용하여 Exynos 7420에서 tensorflow 모델을 벤치마킹 해 왔습니다. 나는 Pete Warden's blog에 따라 테스트 퀀 타이즈 속도를 높이고 싶지만 아직 여러 가지를 깰 때 양자화 뎁스로 benchmark_model을 컴파일하지 못했습니다.안드로이드 벤치마킹 퀀 타이즈
:deps = [":benchmark_model_lib",
"//tensorflow/contrib/quantization/kernels:quantized_ops",
],
// tensorflow /있는 contrib/양자화/커널/BUILD cc_binary BUILD/
// tensorflow/도구/벤치 마크 :
나는이 stack overflow thread에 나와있는 지침을 따랐습니다
deps = [
"//tensorflow/contrib/quantization:cc_array_ops",
"//tensorflow/contrib/quantization:cc_math_ops",
"//tensorflow/contrib/quantization:cc_nn_ops",
#"//tensorflow/core",
#"//tensorflow/core:framework",
#"//tensorflow/core:lib",
#"//tensorflow/core/kernels:concat_lib_hdrs",
#"//tensorflow/core/kernels:conv_ops",
#"//tensorflow/core/kernels:eigen_helpers",
#"//tensorflow/core/kernels:ops_util",
#"//tensorflow/core/kernels:pooling_ops",
"//third_party/eigen3",
"@gemmlowp//:eight_bit_int_gemm",
],
그런 다음 실행
bazel는 '-c 선택 하 --cxxopt = 건설 -들 td = gnu ++ 11 '- crosstool_top = // 외부 : android/crosstool --cpu = armeabi-v7a --host_crosstool_top = @ bazel_tools // tools/cpp : 툴체인 tensorflow/tools/벤치 마크 : benchmark_model --verbose_failures
링크 된 게시물의 다른 모든 지시 사항과 함께 다음 중 어떤 것이 pthread와 연결되지 않는 것을 제외하고는 성공합니다.
tensorflow/tensorflow.bzl tfcopts()에서 -lpthread를 제거하고 tensorflow/tools/proto_text/BUILD 및 tensorflow/cc/BUILD에서 비슷한 방식으로 제거해 보았습니다.
def tf_copts():
return (["-fno-exceptions", "-DEIGEN_AVOID_STL_ARRAY"] +
if_cuda(["-DGOOGLE_CUDA=1"]) +
if_android_arm(["-mfpu=neon"]) +
select({"//tensorflow:android": [
"-std=c++11",
"-DMIN_LOG_LEVEL=0",
"-DTF_LEAN_BINARY",
"-O2",
],
"//tensorflow:darwin": [],
"//tensorflow:ios": ["-std=c++11",],
#"//conditions:default": ["-lpthread"]}))
"//conditions:default": []}))
링크 오류가 계속 발생합니다.
external/androidndk/ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lpthread
collect2: error: ld returned 1 exit status
많은 도움을 주셨습니다. 꽤 고생했습니다.
봉투 :
- 우분투 # 4462
- android_ndk_r11c
- 안드로이드 SDK - 리눅스 r24.4.1
- 파이썬 2.7.12 : 연속체 분석, 주식을 커밋 tensorflow 14.04
- ./GCP, HDFS 또는 GPU를 지원하지 않는 구성
현재 작동 중입니다. 예, 우리는 여전히 양자화 된 연산을 최적화하고 있으므로 최대 속도로 현재 속도를 사용하지 마십시오. –