Thing Done

← The fleet

Pi Pico 2W vs Arduino Uno

Cortex-M33 (RP2350) at 150 MHz against ATmega328P at 16 MHz, on real hardware, same C kernels, clocks verified.

Pi Pico 2W

Pi Pico 2W

Cortex-M33 (RP2350)
Family
Arm Cortex-M
Board
Pi Pico 2W
Clock
150 MHz
float / double
32-bit / 64-bit
Arduino Uno

Arduino Uno

ATmega328P
Family
AVR
Board
Arduino Uno
Clock
16 MHz
float / double
32-bit / 32-bit
Typical gap
61.3×
Pi Pico 2W faster, geometric mean of 30 cells
Biggest win for Pi Pico 2W
371×
uint32_t divide
Closest cell
11.9×
double modulo
Clock for clock
6.54×
Pi Pico 2W needs fewer cycles per op (9.38× clock gap)

Operation by operation

Every cell

How many times faster Pi Pico 2W is than Arduino Uno, operations per second. Blue: Pi Pico 2W ahead. Orange: Arduino Uno ahead.

AddSubtractMultiplyDivideModulo
uint8_t 24.9× 12.2 M/s · 490 k/s 24.9× 12.2 M/s · 490 k/s 25.2× 11.3 M/s · 448 k/s 66.7× 9.49 M/s · 142 k/s 56.0× 7.97 M/s · 142 k/s
uint16_t 23.5× 12.3 M/s · 522 k/s 23.4× 12.2 M/s · 522 k/s 29.7× 12.3 M/s · 413 k/s 125× 8.7 M/s · 69.5 k/s 107× 7.4 M/s · 69.5 k/s
uint32_t 38.8× 13.3 M/s · 342 k/s 39.1× 13.4 M/s · 342 k/s 90.8× 12.3 M/s · 135 k/s 371× 9.2 M/s · 24.8 k/s 330× 8.19 M/s · 24.8 k/s
uint64_t 132× 9.84 M/s · 74.6 k/s 132× 9.84 M/s · 74.6 k/s 228× 8.19 M/s · 35.9 k/s 22.2× 340 k/s · 15.3 k/s 22.4× 340 k/s · 15.2 k/s
float 136× 13.4 M/s · 98.3 k/s 135× 13.4 M/s · 98.7 k/s 154× 13.4 M/s · 87 k/s 200× 6.43 M/s · 32.2 k/s 16.9× 1.74 M/s · 103 k/s
double 58.2× 5.71 M/s · 98.1 k/s 57.8× 5.69 M/s · 98.6 k/s 39.9× 3.46 M/s · 86.8 k/s 65.2× 2.1 M/s · 32.2 k/s 11.9× 1.22 M/s · 103 k/s

Where they sit in the fleet

Keep comparing

Swap sides