Skip to content

Commit

Permalink
1.rknn_converter support rv1106/rv1103
Browse files Browse the repository at this point in the history
2.yolo series model update. support v6,v8,ppyoloe_plus
3.fix bugs.
  • Loading branch information
zen committed Jan 30, 2023
1 parent 4d7c483 commit e13992d
Show file tree
Hide file tree
Showing 80 changed files with 5,718 additions and 489 deletions.
7 changes: 6 additions & 1 deletion capi_tools/scaling_frequency.sh
Original file line number Diff line number Diff line change
Expand Up @@ -236,10 +236,15 @@ case $seting_strategy in
print_and_compare_result $CPU_freq $cur_freq

echo "NPU: seting frequency"
echo " no strategy to seting NPU frequency"
echo " no strategy to seting DDR frequency"
cur_freq=$(cat /sys/kernel/debug/clk/clk_summary | grep aclk_npu_root | awk '{split($0,a," "); print a[5]}')
print_and_compare_result $NPU_freq $cur_freq

echo "DDR: seting frequency"
echo " no strategy to seting DDR frequency"
cur_freq=$(cat /sys/kernel/debug/clk/clk_summary | grep clk_core_ddrc_src | awk '{split($0,a," "); print a[5]}')
cur_freq="`expr $cur_freq \* 2`"
print_and_compare_result $DDR_freq $cur_freq
;;
*)
echo "seting strategy not implement now"
Expand Down
47 changes: 0 additions & 47 deletions capi_tools/toolkit1/rknn_capi_test/build.sh

This file was deleted.

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
2 changes: 1 addition & 1 deletion capi_tools/toolkit2/rknn_capi_test/build-android_RK356X.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ if [[ ! -d "${BUILD_DIR}" ]]; then
fi

cd ${BUILD_DIR}
cmake ../.. \
cmake ../../full_driver \
-DANDROID_TOOLCHAIN=clang \
-DTARGET_SOC=${TARGET_SOC} \
-DCMAKE_SYSTEM_NAME=Android \
Expand Down
2 changes: 1 addition & 1 deletion capi_tools/toolkit2/rknn_capi_test/build-android_RK3588.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ if [[ ! -d "${BUILD_DIR}" ]]; then
fi

cd ${BUILD_DIR}
cmake ../.. \
cmake ../../full_driver \
-DANDROID_TOOLCHAIN=clang \
-DTARGET_SOC=${TARGET_SOC} \
-DMZ_ROOT=${MZ_ROOT} \
Expand Down
2 changes: 1 addition & 1 deletion capi_tools/toolkit2/rknn_capi_test/build-linux_RK356X.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ if [[ ! -d "${BUILD_DIR}" ]]; then
fi

cd ${BUILD_DIR}
cmake ../.. -DCMAKE_SYSTEM_NAME=Linux -DTARGET_SOC=${TARGET_SOC} -DMZ_ROOT=${MZ_ROOT}
cmake ../../full_driver -DCMAKE_SYSTEM_NAME=Linux -DTARGET_SOC=${TARGET_SOC} -DMZ_ROOT=${MZ_ROOT}
make -j4
make install
cd -
2 changes: 1 addition & 1 deletion capi_tools/toolkit2/rknn_capi_test/build-linux_RK3588.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ if [[ ! -d "${BUILD_DIR}" ]]; then
fi

cd ${BUILD_DIR}
cmake ../.. -DCMAKE_SYSTEM_NAME=Linux -DTARGET_SOC=${TARGET_SOC} -DMZ_ROOT=${MZ_ROOT}
cmake ../../full_driver -DCMAKE_SYSTEM_NAME=Linux -DTARGET_SOC=${TARGET_SOC} -DMZ_ROOT=${MZ_ROOT}
make -j4
make install
cd -
27 changes: 27 additions & 0 deletions capi_tools/toolkit2/rknn_capi_test/build-linux_RV110X.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
set -e

TARGET_SOC="rv110x"

export TOOL_CHAIN="/home/xz/Documents/git_rk/compile_tools/1106/arm-rockchip830-linux-uclibcgnueabihf"
GCC_COMPILER=${TOOL_CHAIN}/bin/arm-rockchip830-linux-uclibcgnueabihf

export LD_LIBRARY_PATH=${TOOL_CHAIN}/lib:$LD_LIBRARY_PATH
export CC=${GCC_COMPILER}-gcc
export CXX=${GCC_COMPILER}-g++

ROOT_PWD=$( cd "$( dirname $0 )" && cd -P "$( dirname "$SOURCE" )" && pwd )

MZ_ROOT=$(pwd | sed 's/\(rknn_model_zoo\).*/\1/g')

# build
BUILD_DIR=${ROOT_PWD}/build/build_linux_rv110x

if [[ ! -d "${BUILD_DIR}" ]]; then
mkdir -p ${BUILD_DIR}
fi

cd ${BUILD_DIR}
cmake ../../mini_driver -DCMAKE_SYSTEM_NAME=Linux -DTARGET_SOC=${TARGET_SOC} -DMZ_ROOT=${MZ_ROOT}
make -j4
make install
cd -
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ target_link_libraries(rknn_capi_test_zero_copy


# install target and libraries
set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/install/${TARGET_SOC}/${CMAKE_SYSTEM_NAME}/rknn_capi_test)
set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/../install/${TARGET_SOC}/${CMAKE_SYSTEM_NAME}/rknn_capi_test)
install(TARGETS rknn_capi_test DESTINATION ./)
install(TARGETS rknn_capi_test_zero_copy DESTINATION ./)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -555,10 +555,10 @@ int main(int argc, char* argv[])
// save output
for (uint32_t i = 0; i < io_num.n_output; i++) {
char output_path[PATH_MAX];
sprintf(output_path, "%s/output_%d.npy", output_dir ? output_dir : ".", i);
sprintf(output_path, "./output_%d.npy", i);
save_npy(output_path, (float*)outputs[i].buf, &output_attrs[i]);
# if 0
sprintf(output_path, "%s/output_%d.bin", output_dir ? output_dir : ".", i);
sprintf(output_path, "./output_%d.bin", i);
FILE *fp = fopen(output_path, "w+");
if (fp != NULL) {
printf("output_attrs[%d].size = %d\n", i, output_attrs[i].size);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -535,7 +535,7 @@ int main(int argc, char* argv[])
// save output
for (uint32_t i = 0; i < io_num.n_output; i++) {
char output_path[PATH_MAX];
sprintf(output_path, "%s/rt_output%d.npy", output_dir ? output_dir : ".", i);
sprintf(output_path, "./output_%d.npy", i);
rknn_tensor_attr output_attrs_npy = output_attrs[i];
if (output_attrs[i].fmt == RKNN_TENSOR_NHWC && output_attrs[i].n_dims == 4) {
std::vector<int> axis = {0, 2, 3, 1};
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
118 changes: 118 additions & 0 deletions capi_tools/toolkit2/rknn_capi_test/mini_driver/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
cmake_minimum_required(VERSION 3.4.1)

project(rknn_capi_test)

set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")


# install target and libraries
#set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/install/rknn_yolov5_demo_${CMAKE_SYSTEM_NAME})

set(CMAKE_SKIP_INSTALL_RPATH FALSE)
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib")


# rknn api
if(TARGET_SOC STREQUAL "rk356x")
set(PLATFORM RK3566_3568)
if (CMAKE_SYSTEM_NAME STREQUAL "Android")
set(LIB_ARCH arm64-v8a)
set(RKNN_API_PATH ${MZ_ROOT}/libs/rklibs/rknpu2/runtime/RK356X/Android/librknn_api)
set(RKNN_RT_LIB ${RKNN_API_PATH}/${LIB_ARCH}/librknnrt.so)
else()
set(LIB_ARCH aarch64)
set(RKNN_API_PATH ${MZ_ROOT}/libs/rklibs/rknpu2/runtime/RK356X/Linux/librknn_api)
set(RKNN_RT_LIB ${RKNN_API_PATH}/${LIB_ARCH}/librknnrt.so)
endif()
#set(RKNN_API_PATH ${CMAKE_SOURCE_DIR}/../../runtime/RK356X/${CMAKE_SYSTEM_NAME}/librknn_api)
#include_directories(${RKNN_API_PATH}/include)
elseif(TARGET_SOC STREQUAL "rk3588")
set(PLATFORM RK3588)
if (CMAKE_SYSTEM_NAME STREQUAL "Android")
set(LIB_ARCH arm64-v8a)
set(RKNN_API_PATH ${MZ_ROOT}/libs/rklibs/rknpu2/runtime/RK3588/Android/librknn_api)
set(RKNN_RT_LIB ${RKNN_API_PATH}/${LIB_ARCH}/librknnrt.so)
else()
set(LIB_ARCH aarch64)
set(RKNN_API_PATH ${MZ_ROOT}/libs/rklibs/rknpu2/runtime/RK3588/Linux/librknn_api)
set(RKNN_RT_LIB ${RKNN_API_PATH}/${LIB_ARCH}/librknnrt.so)
endif()
# set(RKNN_API_PATH ${CMAKE_SOURCE_DIR}/../../runtime/RK3588/${CMAKE_SYSTEM_NAME}/librknn_api)
elseif(TARGET_SOC STREQUAL "rv110x")
set(PLATFORM RV1106_1103)
set(LIB_ARCH armhf)
set(RKNN_API_PATH ${MZ_ROOT}/libs/rklibs/rknpu2/runtime/RV1106/Linux/librknn_api)
set(RKNN_RT_LIB ${RKNN_API_PATH}/${LIB_ARCH}/librknnmrt.so)
else()
message(FATAL_ERROR "TARGET_SOC is not set, ref value: rk356x or rk3588 ")
endif()

include_directories(${RKNN_API_PATH}/include)


# CNPY
set(CNPY_DIR ${CMAKE_SOURCE_DIR}/cnpy)
include_directories(${CNPY_DIR})
message("CNPY_DIR: ${CNPY_DIR}")


# drm
set(DRM_DIR ${MZ_ROOT}/libs/common/drm)
include_directories(${DRM_DIR}/include)
include_directories(${DRM_DIR}/include/libdrm)


#stb CImg
set(STB_DIR ${MZ_ROOT}/libs/common/)
include_directories(${STB_DIR})

# zlib(used by libpng)
set(ZLIB_DIR ${MZ_ROOT}/libs/platform/${PLATFORM}/zlib)
include_directories(${ZLIB_DIR}/include)
set(ZLIB_LIB ${ZLIB_DIR}/lib/libz.a)

string(REPLACE "-DANDROID" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
string(REPLACE "-DANDROID" "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")

set(CMAKE_INSTALL_RPATH "lib")

include_directories( ${CMAKE_SOURCE_DIR}/include)

add_executable(rknn_capi_test_zero_copy_NC1HWC2
src/rknn_api_native_output_test.c
${CNPY_DIR}/cnpy.h
src/float16.h
)

target_link_libraries(rknn_capi_test_zero_copy_NC1HWC2
${RKNN_RT_LIB}
${RGA_LIB}
${LIBJPEG_LIB}
${LIBPNG_LIB}
${ZLIB_LIB}
dl
)

add_executable(rknn_capi_test_zero_copy_NCHW
src/rknn_api_native_nhwc_output_test.c
${CNPY_DIR}/cnpy.h
)

target_link_libraries(rknn_capi_test_zero_copy_NCHW
${RKNN_RT_LIB}
${RGA_LIB}
${LIBJPEG_LIB}
${LIBPNG_LIB}
${ZLIB_LIB}
dl
)


# install target and libraries
set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/../install/${TARGET_SOC}/${CMAKE_SYSTEM_NAME}/rknn_capi_test)
install(TARGETS rknn_capi_test_zero_copy_NC1HWC2 DESTINATION ./)
install(TARGETS rknn_capi_test_zero_copy_NCHW DESTINATION ./)

install(PROGRAMS ${RKNN_RT_LIB} DESTINATION lib)
Loading

0 comments on commit e13992d

Please sign in to comment.