Pi Pico 2W (RISC-V) vs Arduino Uno
Hazard3 RV32IMAC (RP2350) at 150 MHz against ATmega328P at 16 MHz, on real hardware, same C kernels, clocks verified.
Pi Pico 2W (RISC-V)
Hazard3 RV32IMAC (RP2350)
- Family
- RISC-V
- Board
- Pi Pico 2W (RISC-V)
- Clock
- 150 MHz
- float / double
- 32-bit / 64-bit
Typical gap
35.2×
Pi Pico 2W (RISC-V) faster, geometric mean of 30 cells
Biggest win for Pi Pico 2W (RISC-V)
206×
uint64_t multiply
Closest cell
7.11×
double modulo
Clock for clock
3.76×
Pi Pico 2W (RISC-V) needs fewer cycles per op (9.38× clock gap)
Operation by operation
Every cell
How many times faster Pi Pico 2W (RISC-V) is than Arduino Uno, operations per second. Blue: Pi Pico 2W (RISC-V) ahead. Orange: Arduino Uno ahead.
| Add | Subtract | Multiply | Divide | Modulo | |
|---|---|---|---|---|---|
| uint8_t | 25.0× 12.2 M/s · 490 k/s | 27.2× 13.3 M/s · 490 k/s | 29.7× 13.3 M/s · 448 k/s | 37.2× 5.3 M/s · 142 k/s | 37.2× 5.3 M/s · 142 k/s |
| uint16_t | 21.7× 11.3 M/s · 522 k/s | 21.7× 11.3 M/s · 522 k/s | 25.4× 10.5 M/s · 413 k/s | 71.2× 4.94 M/s · 69.5 k/s | 68.9× 4.79 M/s · 69.5 k/s |
| uint32_t | 35.7× 12.2 M/s · 342 k/s | 33.0× 11.3 M/s · 342 k/s | 83.7× 11.3 M/s · 135 k/s | 199× 4.94 M/s · 24.8 k/s | 199× 4.94 M/s · 24.8 k/s |
| uint64_t | 110× 8.2 M/s · 74.6 k/s | 110× 8.2 M/s · 74.6 k/s | 206× 7.39 M/s · 35.9 k/s | 53.8× 822 k/s · 15.3 k/s | 52.2× 794 k/s · 15.2 k/s |
| float | 24.7× 2.43 M/s · 98.3 k/s | 24.6× 2.43 M/s · 98.7 k/s | 34.2× 2.98 M/s · 87 k/s | 23.5× 758 k/s · 32.2 k/s | 11.1× 1.14 M/s · 103 k/s |
| double | 12.4× 1.21 M/s · 98.1 k/s | 12.6× 1.24 M/s · 98.6 k/s | 7.81× 678 k/s · 86.8 k/s | 12.2× 394 k/s · 32.2 k/s | 7.11× 731 k/s · 103 k/s |