我可以使用交叉工具链为arm平台构建张量流,如下所述

bazel cross compile

但是当我们从tensorflow主目录运行'./configure'时,Tensorflow支持使用OpenCL支持构建我们得到以下问题

您是否希望通过OpenCL支持构建TensorFlow? [y / N]:y将为TensorFlow启用OpenCL支持 . 请指定应将哪个C编译器用作主机C编译器 . [默认为/ usr / bin / g]:请指定应将哪个C编译器用作主机C编译器 . [默认为/ usr / bin / gcc]:请指定安装ComputeCpp for SYCL 1.2的位置 . [默认为/ usr / local / computecpp]:

我想知道如何在构建交叉工具链的tensorflow时启用opencl . 我怀疑上述配置会被交叉工具链中指定的配置覆盖

Actual Requirement : 使用--config = sycl为arm 32位系统交叉构建Tensorflow

Things Done

  • 能够使用以下命令交叉构建Tensorflow而不使用--config = sycl for arm 32位系统

bazel build --crosstool_top = // armv7l-compiler:toolchain --cpu = armeabi-v7a tensorflow:libtensorflow_cc.so --cxxopt =“ - std = c 11”

Result : 内置精细没有错误

2使用下面的命令交叉构建没有--config = sycl的Tensorflow用于arm 32位系统

bazel build -c opt --copt="-mfpu=neon" --crosstool_top=//armv7l-compiler:toolchain --cpu=armeabi-v7a tensorflow:libtensorflow_cc.so --cxxopt="-std=c++11" --config=sycl

Result 在尝试链接libComputeCpp.so时,最后一刻构建失败

我从codeplaysoftware网站下载了Linux16.04和arm64位的sdk . 我可以知道是否有32位版本

我基本上想通过使用opencl或sycl来提高嵌入式32位arm设备上TensorFlow的速度 . 您还可以建议在构建时使用任何其他优化标志 .

谢谢