@@ -82,43 +82,85 @@ jobs:
82
82
cd build
83
83
TESTS_EXECUTABLE_LOADER=qemu-riscv64 TESTS_EXECUTABLE_LOADER_ARGUMENTS="-L;/usr/riscv64-linux-gnu" ctest --output-on-failure -j $(nproc)
84
84
85
- c906 :
85
+ xuantie :
86
+ name : xuantie-${{ matrix.cpu }}
86
87
runs-on : [self-hosted, linux, ubuntu]
88
+ strategy :
89
+ fail-fast : false
90
+ matrix :
91
+ include :
92
+ - { cpu: c906, QEMU_CPU: c906fdv, OPENMP: OFF, RVV: OFF, XTHEADVECTOR: ON, ZFH: ON, ZVFH: OFF }
93
+ - { cpu: c910, QEMU_CPU: c910v, OPENMP: ON, RVV: OFF, XTHEADVECTOR: ON, ZFH: ON, ZVFH: OFF }
94
+ - { cpu: c908, QEMU_CPU: c908v, OPENMP: ON, RVV: ON, XTHEADVECTOR: OFF, ZFH: ON, ZVFH: ON }
95
+
87
96
steps :
88
97
- uses : actions/checkout@v4
89
98
90
- - name : configure
99
+ - name : build
91
100
run : |
92
101
export RISCV_ROOT_PATH=/data/action/osd/Xuantie-900-gcc-linux-6.6.0-glibc-x86_64-V3.0.1
93
102
mkdir build && cd build
94
- cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/c906-v301.toolchain.cmake -DCMAKE_BUILD_TYPE=release -DNCNN_OPENMP=OFF -DNCNN_THREADS=OFF -DNCNN_RUNTIME_CPU=OFF -DNCNN_RVV=OFF -DNCNN_XTHEADVECTOR=ON -DNCNN_ZFH=ON -DNCNN_SIMPLEOCV=ON -DNCNN_BUILD_EXAMPLES=ON -DNCNN_BUILD_TESTS=ON ..
95
- - name : build
96
- run : cmake --build build -j 8
103
+ cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/${{ matrix.cpu }}-v301.toolchain.cmake -DCMAKE_BUILD_TYPE=release \
104
+ -DNCNN_OPENMP=${{ matrix.OPENMP }} -DNCNN_THREADS=${{ matrix.OPENMP }} \
105
+ -DNCNN_RUNTIME_CPU=OFF \
106
+ -DNCNN_RVV=${{ matrix.RVV }} \
107
+ -DNCNN_XTHEADVECTOR=${{ matrix.XTHEADVECTOR }} \
108
+ -DNCNN_ZFH=${{ matrix.ZFH }} \
109
+ -DNCNN_ZVFH=${{ matrix.ZVFH }} \
110
+ -DNCNN_SIMPLEOCV=ON -DNCNN_BUILD_EXAMPLES=ON -DNCNN_BUILD_TESTS=ON ..
111
+ cmake --build . -j 8
97
112
98
113
- name : test
99
114
run : |
100
115
export PATH=/data/action/osd/Xuantie-qemu-x86_64-Ubuntu-20.04-V5.0.4-B20241127-1130/bin:$PATH
101
116
cd build
102
- TESTS_EXECUTABLE_LOADER=qemu-riscv64 TESTS_EXECUTABLE_LOADER_ARGUMENTS="-cpu;c906fdv " ctest --output-on-failure -j 8
117
+ TESTS_EXECUTABLE_LOADER=qemu-riscv64 TESTS_EXECUTABLE_LOADER_ARGUMENTS="-cpu;${{ matrix.QEMU_CPU }} " ctest --output-on-failure -j 8
103
118
104
- c910 :
119
+ spacemit :
120
+ name : spacemit-${{ matrix.cpu }}
105
121
runs-on : [self-hosted, linux, ubuntu]
122
+ strategy :
123
+ fail-fast : false
124
+ matrix :
125
+ include :
126
+ - { cpu: x60, QEMU_CPU: rv64, OPENMP: ON, RVV: ON, XTHEADVECTOR: OFF, ZFH: ON, ZVFH: ON }
127
+
106
128
steps :
107
129
- uses : actions/checkout@v4
108
130
109
- - name : configure
131
+ - name : build-gcc
110
132
run : |
111
- export RISCV_ROOT_PATH=/data/action/osd/Xuantie-900-gcc-linux-6.6.0-glibc-x86_64-V3.0.1
112
- mkdir build && cd build
113
- cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/c910-v301.toolchain.cmake -DCMAKE_BUILD_TYPE=release -DNCNN_OPENMP=ON -DNCNN_RUNTIME_CPU=OFF -DNCNN_RVV=OFF -DNCNN_XTHEADVECTOR=ON -DNCNN_ZFH=ON -DNCNN_SIMPLEOCV=ON -DNCNN_BUILD_EXAMPLES=ON -DNCNN_BUILD_TESTS=ON ..
114
- - name : build
115
- run : cmake --build build -j 8
133
+ export RISCV_ROOT_PATH=/data/action/osd/spacemit-toolchain-linux-glibc-x86_64-v1.0.5
134
+ mkdir build-gcc && cd build-gcc
135
+ cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/k1.toolchain.cmake -DCMAKE_BUILD_TYPE=release \
136
+ -DNCNN_OPENMP=${{ matrix.OPENMP }} -DNCNN_THREADS=${{ matrix.OPENMP }} \
137
+ -DNCNN_RUNTIME_CPU=OFF \
138
+ -DNCNN_RVV=${{ matrix.RVV }} \
139
+ -DNCNN_XTHEADVECTOR=${{ matrix.XTHEADVECTOR }} \
140
+ -DNCNN_ZFH=${{ matrix.ZFH }} \
141
+ -DNCNN_ZVFH=${{ matrix.ZVFH }} \
142
+ -DNCNN_SIMPLEOCV=ON -DNCNN_BUILD_EXAMPLES=ON -DNCNN_BUILD_TESTS=ON ..
143
+ cmake --build . -j 8
116
144
117
- - name : test
145
+ - name : build-llvm
118
146
run : |
119
- export PATH=/data/action/osd/Xuantie-qemu-x86_64-Ubuntu-20.04-V5.0.4-B20241127-1130/bin:$PATH
120
- cd build
121
- TESTS_EXECUTABLE_LOADER=qemu-riscv64 TESTS_EXECUTABLE_LOADER_ARGUMENTS="-cpu;c910v" ctest --output-on-failure -j 8
147
+ export RISCV_ROOT_PATH=/data/action/osd/spacemit-toolchain-linux-glibc-x86_64-v1.0.5
148
+ mkdir build-llvm && cd build-llvm
149
+ cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/k1.llvm.toolchain.cmake -DCMAKE_BUILD_TYPE=release \
150
+ -DNCNN_OPENMP=${{ matrix.OPENMP }} -DNCNN_THREADS=${{ matrix.OPENMP }} \
151
+ -DNCNN_RUNTIME_CPU=OFF \
152
+ -DNCNN_RVV=${{ matrix.RVV }} \
153
+ -DNCNN_XTHEADVECTOR=${{ matrix.XTHEADVECTOR }} \
154
+ -DNCNN_ZFH=${{ matrix.ZFH }} \
155
+ -DNCNN_ZVFH=${{ matrix.ZVFH }} \
156
+ -DNCNN_SIMPLEOCV=ON -DNCNN_BUILD_EXAMPLES=ON -DNCNN_BUILD_TESTS=ON ..
157
+ cmake --build . -j 8
158
+
159
+ # - name: test-gcc
160
+ # run: |
161
+ # export PATH=/data/action/osd/spacemit-ai-sdk.v1.1.0/spacemit-qemu/bin:$PATH
162
+ # cd build-gcc
163
+ # TESTS_EXECUTABLE_LOADER=qemu-riscv64 TESTS_EXECUTABLE_LOADER_ARGUMENTS="-cpu;${{ matrix.QEMU_CPU }}" ctest --output-on-failure -j 8
122
164
123
165
gcc-rvv :
124
166
runs-on : [self-hosted, linux, ubuntu]
0 commit comments