Benchmarks 2024 11 21 TVM LLVM O3 spike_rv32 - tum-ei-eda/muriscv-nn GitHub Wiki
Setup
Simulator
- Spike (
riscv-isa-sim
) (ISS, CPI=1)- Spike :
0bc176b3fca43560b9e8586cdbc41cfde073e17a
- Spike PK :
7e9b671c0415dfd7b562ac934feb9380075d4aa2
- Spike :
Toolchains
-
RISC-V GCC:
- Scalar:
riscv32-unknown-elf-gcc (gc891d8dc23e) 13.2.0
- Vector:
riscv32-unknown-elf-gcc (gc891d8dc23e) 13.2.0
- Packed: Self compiled using patches found in https://github.com/riscv-collab/riscv-gcc/pull/258 and https://github.com/riscvarchive/riscv-binutils-gdb/pull/257
- Scalar:
-
LLVM/Clang:
clang version 18.1.8 (https://github.com/llvm/llvm-project.git 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
- Linker: lld (TODO)
Models
-
MLPerfTiny Benchmark
-
TODO: others!
Frameworks
-
MLonMCU :
develop
-
TVM :
Nightly Pre-Build
Miscellaneous
- Used
-Os
flag for compilation. - Benchmarks generated using MLonMCU deployment tool with minimal efforts.
- Memory metrics are reported in Bytes
Results (Framework: tvm, Backend: tvmaot, Toolchain: llvm, Flags: -O3, Target: spike_rv32 )
aww
)
Audio Wake Words (Cycles (Speedup) | Total ROM (rel.) | Total RAM (rel.) | VLEN | Layout | Kernels | Mode | Arch | Unroll | Auto-Vectorization |
---|---|---|---|---|---|---|---|---|---|
13463137 ( 1.1x ) |
128328 ( 1.41 ) |
59444 ( 3.094 ) |
0 | NCHW | TVM | Fallback | RV32GC | 0 | - |
20995666 ( 0.7x ) |
114936 ( 1.263 ) |
59444 ( 3.094 ) |
0 | NHWC | TVM | Fallback | RV32GC | 0 | - |
6381776 ( 2.4x ) |
124962 ( 1.373 ) |
59444 ( 3.094 ) |
128 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
6382022 ( 2.4x ) |
124962 ( 1.373 ) |
59444 ( 3.094 ) |
256 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
6386314 ( 2.4x ) |
124962 ( 1.373 ) |
59444 ( 3.094 ) |
512 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
6386270 ( 2.4x ) |
124962 ( 1.373 ) |
59444 ( 3.094 ) |
1024 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
6394746 ( 2.4x ) |
124962 ( 1.373 ) |
59444 ( 3.094 ) |
2048 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
6404913 ( 2.4x ) |
124962 ( 1.373 ) |
59444 ( 3.094 ) |
4096 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
3645557 ( 4.2x ) |
131336 ( 1.443 ) |
59444 ( 3.094 ) |
128 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
2203743 ( 6.9x ) |
131336 ( 1.443 ) |
59444 ( 3.094 ) |
256 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
1483616 ( 10.2x ) |
131336 ( 1.443 ) |
59444 ( 3.094 ) |
512 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
1633682 ( 9.3x ) |
131336 ( 1.443 ) |
59444 ( 3.094 ) |
1024 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
21399815 ( 0.7x ) |
131336 ( 1.443 ) |
59444 ( 3.094 ) |
2048 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
21403204 ( 0.7x ) |
131336 ( 1.443 ) |
59444 ( 3.094 ) |
4096 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
15197286 ( Base ) |
90988 ( Base ) |
19212 ( Base ) |
0 | NHWC | muRISCV-NN | Scalar | RV32GC | 0 | - |
14572009 ( 1.0x ) |
90738 ( 0.997 ) |
23676 ( 1.232 ) |
0 | NHWC | muRISCV-NN | Vector (Portable) | RV32GC | 0 | - |
5740108 ( 2.6x ) |
98530 ( 1.083 ) |
19252 ( 1.002 ) |
128 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
5157367 ( 2.9x ) |
98530 ( 1.083 ) |
19252 ( 1.002 ) |
256 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
4865375 ( 3.1x ) |
98530 ( 1.083 ) |
19252 ( 1.002 ) |
512 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
4726157 ( 3.2x ) |
98530 ( 1.083 ) |
19252 ( 1.002 ) |
1024 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
13195473 ( 1.2x ) |
98530 ( 1.083 ) |
19252 ( 1.002 ) |
2048 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
13188695 ( 1.2x ) |
98530 ( 1.083 ) |
19252 ( 1.002 ) |
4096 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
5108678 ( 3.0x ) |
93352 ( 1.026 ) |
23676 ( 1.232 ) |
128 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
3974676 ( 3.8x ) |
93352 ( 1.026 ) |
23676 ( 1.232 ) |
256 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
3416406 ( 4.4x ) |
93352 ( 1.026 ) |
23676 ( 1.232 ) |
512 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
3375422 ( 4.5x ) |
93352 ( 1.026 ) |
23676 ( 1.232 ) |
1024 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
3378811 ( 4.5x ) |
93352 ( 1.026 ) |
23676 ( 1.232 ) |
2048 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
3382200 ( 4.5x ) |
93352 ( 1.026 ) |
23676 ( 1.232 ) |
4096 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
6484176 ( 2.3x ) |
99054 ( 1.089 ) |
23716 ( 1.234 ) |
128 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
5901435 ( 2.6x ) |
99054 ( 1.089 ) |
23716 ( 1.234 ) |
256 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
5609443 ( 2.7x ) |
99054 ( 1.089 ) |
23716 ( 1.234 ) |
512 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
5470225 ( 2.8x ) |
99054 ( 1.089 ) |
23716 ( 1.234 ) |
1024 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
13939541 ( 1.1x ) |
99054 ( 1.089 ) |
23716 ( 1.234 ) |
2048 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
13939541 ( 1.1x ) |
99054 ( 1.089 ) |
23716 ( 1.234 ) |
4096 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
resnet
)
Image Classification (Cycles (Speedup) | Total ROM (rel.) | Total RAM (rel.) | VLEN | Layout | Kernels | Mode | Arch | Unroll | Auto-Vectorization |
---|---|---|---|---|---|---|---|---|---|
60477978 ( 0.9x ) |
233212 ( 1.686 ) |
108356 ( 1.952 ) |
0 | NCHW | TVM | Fallback | RV32GC | 0 | - |
66644688 ( 0.8x ) |
228230 ( 1.65 ) |
108356 ( 1.952 ) |
0 | NHWC | TVM | Fallback | RV32GC | 0 | - |
115999621 ( 0.5x ) |
303086 ( 2.191 ) |
108356 ( 1.952 ) |
128 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
115961248 ( 0.5x ) |
303082 ( 2.191 ) |
108356 ( 1.952 ) |
256 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
116343311 ( 0.5x ) |
303086 ( 2.191 ) |
108356 ( 1.952 ) |
512 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
116353436 ( 0.5x ) |
303082 ( 2.191 ) |
108356 ( 1.952 ) |
1024 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
116371580 ( 0.5x ) |
303082 ( 2.191 ) |
108356 ( 1.952 ) |
2048 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
116405472 ( 0.5x ) |
303086 ( 2.191 ) |
108356 ( 1.952 ) |
4096 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
54751250 ( 1.0x ) |
230114 ( 1.663 ) |
108356 ( 1.952 ) |
128 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
51625344 ( 1.1x ) |
230114 ( 1.663 ) |
108356 ( 1.952 ) |
256 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
50149363 ( 1.1x ) |
230116 ( 1.663 ) |
108356 ( 1.952 ) |
512 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
75115176 ( 0.7x ) |
230114 ( 1.663 ) |
108356 ( 1.952 ) |
1024 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
91728033 ( 0.6x ) |
230114 ( 1.663 ) |
108356 ( 1.952 ) |
2048 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
91744981 ( 0.6x ) |
230124 ( 1.664 ) |
108356 ( 1.952 ) |
4096 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
56214248 ( Base ) |
138336 ( Base ) |
55516 ( Base ) |
0 | NHWC | muRISCV-NN | Scalar | RV32GC | 0 | - |
72237140 ( 0.8x ) |
137914 ( 0.997 ) |
55516 ( 1.0 ) |
0 | NHWC | muRISCV-NN | Vector (Portable) | RV32GC | 0 | - |
11790683 ( 4.8x ) |
147030 ( 1.063 ) |
55548 ( 1.001 ) |
128 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
11337439 ( 5.0x ) |
147030 ( 1.063 ) |
55548 ( 1.001 ) |
256 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
14183639 ( 4.0x ) |
147030 ( 1.063 ) |
55548 ( 1.001 ) |
512 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
15672539 ( 3.6x ) |
147030 ( 1.063 ) |
55548 ( 1.001 ) |
1024 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
16349829 ( 3.4x ) |
147030 ( 1.063 ) |
55548 ( 1.001 ) |
2048 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
35542430 ( 1.6x ) |
147030 ( 1.063 ) |
55548 ( 1.001 ) |
4096 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
15158451 ( 3.7x ) |
140960 ( 1.019 ) |
55516 ( 1.0 ) |
128 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
9575255 ( 5.9x ) |
140960 ( 1.019 ) |
55516 ( 1.0 ) |
256 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
7029417 ( 8.0x ) |
140960 ( 1.019 ) |
55516 ( 1.0 ) |
512 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
5787289 ( 9.7x ) |
140960 ( 1.019 ) |
55516 ( 1.0 ) |
1024 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
4862414 ( 11.6x ) |
140960 ( 1.019 ) |
55516 ( 1.0 ) |
2048 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
4616711 ( 12.2x ) |
140960 ( 1.019 ) |
55516 ( 1.0 ) |
4096 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
17562990 ( 3.2x ) |
146312 ( 1.058 ) |
55548 ( 1.001 ) |
128 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
16530556 ( 3.4x ) |
146312 ( 1.058 ) |
55548 ( 1.001 ) |
256 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
17287920 ( 3.3x ) |
146312 ( 1.058 ) |
55548 ( 1.001 ) |
512 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
17004708 ( 3.3x ) |
146312 ( 1.058 ) |
55548 ( 1.001 ) |
1024 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
16537166 ( 3.4x ) |
146312 ( 1.058 ) |
55548 ( 1.001 ) |
2048 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
43320167 ( 1.3x ) |
146312 ( 1.058 ) |
55548 ( 1.001 ) |
4096 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
toycar
)
Anomaly Detection (Cycles (Speedup) | Total ROM (rel.) | Total RAM (rel.) | VLEN | Layout | Kernels | Mode | Arch | Unroll | Auto-Vectorization |
---|---|---|---|---|---|---|---|---|---|
1640614 ( 1.0x ) |
589816 ( 1.872 ) |
5548 ( 1.168 ) |
0 | NCHW | TVM | Fallback | RV32GC | 0 | - |
1640614 ( 1.0x ) |
589816 ( 1.872 ) |
5548 ( 1.168 ) |
0 | NHWC | TVM | Fallback | RV32GC | 0 | - |
834169 ( 2.1x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
128 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
775542 ( 2.2x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
256 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
759687 ( 2.3x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
512 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
748650 ( 2.3x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
1024 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
748215 ( 2.3x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
2048 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
1444951 ( 1.2x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
4096 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
834169 ( 2.1x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
128 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
775542 ( 2.2x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
256 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
759687 ( 2.3x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
512 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
748650 ( 2.3x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
1024 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
748215 ( 2.3x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
2048 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
1444951 ( 1.2x ) |
590836 ( 1.875 ) |
5548 ( 1.168 ) |
4096 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
1716826 ( Base ) |
315108 ( Base ) |
4748 ( Base ) |
0 | NHWC | muRISCV-NN | Scalar | RV32GC | 0 | - |
1716826 ( 1.0x ) |
315108 ( 1.0 ) |
4748 ( 1.0 ) |
0 | NHWC | muRISCV-NN | Vector (Portable) | RV32GC | 0 | - |
578890 ( 3.0x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
128 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
492725 ( 3.5x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
256 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
447509 ( 3.8x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
512 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
424901 ( 4.0x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
1024 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
413597 ( 4.2x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
2048 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
1350538 ( 1.3x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
4096 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
615647 ( 2.8x ) |
316414 ( 1.004 ) |
4748 ( 1.0 ) |
128 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
498967 ( 3.4x ) |
316414 ( 1.004 ) |
4748 ( 1.0 ) |
256 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
440627 ( 3.9x ) |
316414 ( 1.004 ) |
4748 ( 1.0 ) |
512 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
411781 ( 4.2x ) |
316414 ( 1.004 ) |
4748 ( 1.0 ) |
1024 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
408150 ( 4.2x ) |
316414 ( 1.004 ) |
4748 ( 1.0 ) |
2048 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
406294 ( 4.2x ) |
316414 ( 1.004 ) |
4748 ( 1.0 ) |
4096 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
578890 ( 3.0x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
128 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
492725 ( 3.5x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
256 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
447509 ( 3.8x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
512 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
424901 ( 4.0x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
1024 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
413597 ( 4.2x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
2048 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
1350538 ( 1.3x ) |
316204 ( 1.003 ) |
4748 ( 1.0 ) |
4096 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
vww
)
Visual Wake Words (Cycles (Speedup) | Total ROM (rel.) | Total RAM (rel.) | VLEN | Layout | Kernels | Mode | Arch | Unroll | Auto-Vectorization |
---|---|---|---|---|---|---|---|---|---|
38492509 ( 1.2x ) |
599828 ( 1.853 ) |
180960 ( 2.113 ) |
0 | NCHW | TVM | Fallback | RV32GC | 0 | - |
55783771 ( 0.8x ) |
574392 ( 1.774 ) |
180960 ( 2.113 ) |
0 | NHWC | TVM | Fallback | RV32GC | 0 | - |
72451208 ( 0.6x ) |
752566 ( 2.324 ) |
180960 ( 2.113 ) |
128 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
72395265 ( 0.6x ) |
752562 ( 2.324 ) |
180960 ( 2.113 ) |
256 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
72398656 ( 0.6x ) |
752564 ( 2.324 ) |
180960 ( 2.113 ) |
512 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
72408823 ( 0.6x ) |
752564 ( 2.324 ) |
180960 ( 2.113 ) |
1024 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
72432546 ( 0.6x ) |
752564 ( 2.324 ) |
180960 ( 2.113 ) |
2048 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
72479991 ( 0.6x ) |
752562 ( 2.324 ) |
180960 ( 2.113 ) |
4096 | NCHW | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
12075833 ( 3.8x ) |
634194 ( 1.959 ) |
180960 ( 2.113 ) |
128 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
8621760 ( 5.3x ) |
634194 ( 1.959 ) |
180960 ( 2.113 ) |
256 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
10064820 ( 4.5x ) |
634190 ( 1.959 ) |
180960 ( 2.113 ) |
512 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
18233473 ( 2.5x ) |
634200 ( 1.959 ) |
180960 ( 2.113 ) |
1024 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
27235667 ( 1.7x ) |
634204 ( 1.959 ) |
180960 ( 2.113 ) |
2048 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
52130313 ( 0.9x ) |
634204 ( 1.959 ) |
180960 ( 2.113 ) |
4096 | NHWC | TVM | Fallback | RV32GCV | 0 | Loop+SLP |
45311162 ( Base ) |
323774 ( Base ) |
85648 ( Base ) |
0 | NHWC | muRISCV-NN | Scalar | RV32GC | 0 | - |
44877717 ( 1.0x ) |
323664 ( 1.0 ) |
85648 ( 1.0 ) |
0 | NHWC | muRISCV-NN | Vector (Portable) | RV32GC | 0 | - |
17567805 ( 2.6x ) |
332412 ( 1.027 ) |
85792 ( 1.002 ) |
128 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
17119263 ( 2.6x ) |
332412 ( 1.027 ) |
85792 ( 1.002 ) |
256 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
18291998 ( 2.5x ) |
332408 ( 1.027 ) |
85792 ( 1.002 ) |
512 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
21441713 ( 2.1x ) |
332410 ( 1.027 ) |
85792 ( 1.002 ) |
1024 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
24968159 ( 1.8x ) |
332410 ( 1.027 ) |
85792 ( 1.002 ) |
2048 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
38917135 ( 1.2x ) |
332412 ( 1.027 ) |
85792 ( 1.002 ) |
4096 | NHWC | muRISCV-NN | Scalar | RV32GCV | 0 | Loop+SLP |
13357010 ( 3.4x ) |
327252 ( 1.011 ) |
85648 ( 1.0 ) |
128 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
10036034 ( 4.5x ) |
327254 ( 1.011 ) |
85648 ( 1.0 ) |
256 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
8744618 ( 5.2x ) |
327252 ( 1.011 ) |
85648 ( 1.0 ) |
512 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
8240634 ( 5.5x ) |
327254 ( 1.011 ) |
85648 ( 1.0 ) |
1024 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
8196257 ( 5.5x ) |
327254 ( 1.011 ) |
85648 ( 1.0 ) |
2048 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
8199646 ( 5.5x ) |
327252 ( 1.011 ) |
85648 ( 1.0 ) |
4096 | NHWC | muRISCV-NN | Vector | RV32GCV | 0 | - |
20316581 ( 2.2x ) |
333070 ( 1.029 ) |
85792 ( 1.002 ) |
128 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
20031336 ( 2.3x ) |
333068 ( 1.029 ) |
85792 ( 1.002 ) |
256 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
21542759 ( 2.1x ) |
333066 ( 1.029 ) |
85792 ( 1.002 ) |
512 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
24692474 ( 1.8x ) |
333068 ( 1.029 ) |
85792 ( 1.002 ) |
1024 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
28218920 ( 1.6x ) |
333070 ( 1.029 ) |
85792 ( 1.002 ) |
2048 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
42174674 ( 1.1x ) |
333070 ( 1.029 ) |
85792 ( 1.002 ) |
4096 | NHWC | muRISCV-NN | Vector (Portable) | RV32GCV | 0 | Loop+SLP |
Original data
Click here to download the raw files for this benchmark.