sudo apt install rockchip-mali-midgard14
sudo apt install rockchip-mali-midgard-dev
sudo apt install ocl-icd-opencl-dev opencl-headers
sudo apt install clinfo
clinfo #显示OpenCL设备信息
sudo apt install libclblas-dev #安装opencv
sudo apt install libopencv-dev
$ sudo apt install cmake git g++ scons
git clone https://github.com/OAID/Tengine.git Tengine-Lite
export ROOT_PATH={Path of tengine-lite} #环境变量,source文件夹路径
cd <tengine-lite-root-dir> #进入Tengine-lite目录
mkdir -p build-linux-opencl
cmake \
-DTENGINE_ENABLE_OPENCL=ON \
-DOPENCL_LIBRARY=/usr/lib/aarch64-linux-gnu/libOpenCL.so \
-DOPENCL_INCLUDE_DIRS=/usr/include ..
make -j4
make install
Error: input elem num(408000) != reshaped elem num(102000)
Tengine FATAL: Infer node(id: 276, op: Reshape) shape failed.
Tengine: Infer shape of graph failed(-1).
Prerun multithread graph failed.
解决方案.
cd /Tengine-Lite/source
make -j4 && install make
sudo apt install rockchip-mali-midgard14
sudo apt install rockchip-mali-midgard-dev
sudo apt install ocl-icd-opencl-dev opencl-headers
sudo apt install clinfo
clinfo #显示OpenCL设备信息
sudo apt install libclblas-dev #安装opencv
sudo apt install libopencv-dev
$ sudo apt install cmake git g++ scons
git clone https://github.com/OAID/Tengine.git Tengine-Lite
下载ACL
git clone -b v20.02 https://github.com/ARM-software/ComputeLibrary.git
构建ACL
$ scons Werror=1 -j4 debug=0 asserts=1 neon=0 opencl=1 embed_kernels=1 os=linux arch=arm64-v8a
创建依赖环境
$ cd Tengine-Lite
$ mkdir -p ./3rdparty/acl/lib
$ mkdir -p ./3rdparty/acl/include
$ cp -rf ComputeLibrary/include/* Tengine/3rdparty/acl/include
$ cp -rf ComputeLibrary/arm_compute Tengine/3rdparty/acl/include
$ cp -rf ComputeLibrary/support Tengine/3rdparty/acl/include
$ cp -rf ComputeLibrary/build/libarm_compute*.so Tengine/3rdparty/acl/lib/
构建选项
$ mkdir build-acl-arm64 && cd build-acl-arm64
$ cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/aarch64-linux-gnu.toolchain.cmake \
-DTENGINE_ENABLE_ACL=ON ..
$ make -j4
$ make install