From 808ad4405605a415bbda4a6e6f06c6f4b086eed9 Mon Sep 17 00:00:00 2001 From: nihui Date: Mon, 2 Dec 2024 05:37:17 +0000 Subject: [PATCH] ci c910 --- .github/workflows/linux-riscv64-cpu-gcc.yml | 21 ++++++++++++++++++- ...lchain.cmake => c910-v301.toolchain.cmake} | 8 +++---- 2 files changed, 24 insertions(+), 5 deletions(-) rename toolchains/{c910-v240.toolchain.cmake => c910-v301.toolchain.cmake} (72%) diff --git a/.github/workflows/linux-riscv64-cpu-gcc.yml b/.github/workflows/linux-riscv64-cpu-gcc.yml index 01a042e010f..3004e7e21a4 100644 --- a/.github/workflows/linux-riscv64-cpu-gcc.yml +++ b/.github/workflows/linux-riscv64-cpu-gcc.yml @@ -80,7 +80,7 @@ jobs: cd build TESTS_EXECUTABLE_LOADER=qemu-riscv64 TESTS_EXECUTABLE_LOADER_ARGUMENTS="-L;/usr/riscv64-linux-gnu" ctest --output-on-failure -j $(nproc) - linux-gcc-riscv64-c906: + c906: runs-on: [self-hosted, linux, ubuntu] steps: - uses: actions/checkout@v4 @@ -99,6 +99,25 @@ jobs: cd build TESTS_EXECUTABLE_LOADER=qemu-riscv64 TESTS_EXECUTABLE_LOADER_ARGUMENTS="-cpu;c906fdv" ctest --output-on-failure -j 8 + c910: + runs-on: [self-hosted, linux, ubuntu] + steps: + - uses: actions/checkout@v4 + + - name: configure + run: | + export RISCV_ROOT_PATH=/data/action/osd/Xuantie-900-gcc-linux-6.6.0-glibc-x86_64-V3.0.1 + mkdir build && cd build + cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/c910-v301.toolchain.cmake -DCMAKE_BUILD_TYPE=release -DNCNN_OPENMP=ON -DNCNN_RUNTIME_CPU=OFF -DNCNN_ZFH=ON -DNCNN_XTHEADVECTOR=ON -DNCNN_SIMPLEOCV=ON -DNCNN_BUILD_EXAMPLES=ON -DNCNN_BUILD_TESTS=ON .. + - name: build + run: cmake --build build -j 8 + + - name: test + run: | + export PATH=/data/action/osd/Xuantie-qemu-x86_64-Ubuntu-20.04-V5.0.4-B20241127-1130/bin:$PATH + cd build + TESTS_EXECUTABLE_LOADER=qemu-riscv64 TESTS_EXECUTABLE_LOADER_ARGUMENTS="-cpu;c910fdv" ctest --output-on-failure -j 8 + linux-gcc-riscv64-rvv: runs-on: [self-hosted, linux, ubuntu] steps: diff --git a/toolchains/c910-v240.toolchain.cmake b/toolchains/c910-v301.toolchain.cmake similarity index 72% rename from toolchains/c910-v240.toolchain.cmake rename to toolchains/c910-v301.toolchain.cmake index 3b63f6b388b..145a4415bde 100644 --- a/toolchains/c910-v240.toolchain.cmake +++ b/toolchains/c910-v301.toolchain.cmake @@ -30,12 +30,12 @@ if(NOT CMAKE_FIND_ROOT_PATH_MODE_PACKAGE) set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) endif() -set(CMAKE_C_FLAGS "-march=rv64gcxtheadc -mabi=lp64d -mtune=c910 -DC906=1 -static") -set(CMAKE_CXX_FLAGS "-march=rv64gcxtheadc -mabi=lp64d -mtune=c910 -DC906=1 -static") +set(CMAKE_C_FLAGS "-march=rv64gc_zfh_xtheadvector_xtheadc -mabi=lp64d -mtune=c910 -DC906=1 -static") +set(CMAKE_CXX_FLAGS "-march=rv64gc_zfh_xtheadvector_xtheadc -mabi=lp64d -mtune=c910 -DC906=1 -static") # cache flags set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}" CACHE STRING "c flags") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" CACHE STRING "c++ flags") -# export RISCV_ROOT_PATH=/home/nihui/osd/Xuantie-900-gcc-linux-5.10.4-glibc-x86_64-V2.4.0 -# cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/c910-v240.toolchain.cmake -DCMAKE_BUILD_TYPE=release -DNCNN_BUILD_TESTS=ON -DNCNN_OPENMP=ON -DNCNN_RUNTIME_CPU=OFF -DNCNN_RVV=OFF -DNCNN_SIMPLEOCV=ON -DNCNN_BUILD_EXAMPLES=ON .. +# export RISCV_ROOT_PATH=/home/nihui/osd/Xuantie-900-gcc-linux-6.6.0-glibc-x86_64-V3.0.1 +# cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/c910-v301.toolchain.cmake -DCMAKE_BUILD_TYPE=release -DNCNN_BUILD_TESTS=ON -DNCNN_OPENMP=ON -DNCNN_RUNTIME_CPU=OFF -DNCNN_ZFH=ON -DNCNN_XTHEADVECTOR=ON -DNCNN_SIMPLEOCV=ON -DNCNN_BUILD_EXAMPLES=ON ..