Thing Done

← The fleet

dsPIC33AK512 vs XIAO MG24

dsPIC33A (dsPIC33AK512MPS506) at 200 MHz against Cortex-M33 (EFR32MG24) at 39 MHz, on real hardware, same C kernels, clocks verified.

dsPIC33AK512MPS506 Curiosity Nano

dsPIC33AK512

dsPIC33A (dsPIC33AK512MPS506)
Family
PIC / dsPIC
Board
dsPIC33AK512MPS506 Curiosity Nano
Clock
200 MHz
float / double
32-bit / 32-bit
XIAO MG24 Sense

XIAO MG24

Cortex-M33 (EFR32MG24)
Family
Arm Cortex-M
Board
XIAO MG24 Sense
Clock
39 MHz
float / double
32-bit / 64-bit
Typical gap
4.42×
dsPIC33AK512 faster, geometric mean of 30 cells
Biggest win for dsPIC33AK512
23.0×
double subtract
Biggest win for XIAO MG24
2.87×
uint64_t divide
Clock for clock
1.16×
XIAO MG24 needs fewer cycles per op (5.13× clock gap)

Operation by operation

Every cell

How many times faster dsPIC33AK512 is than XIAO MG24, operations per second. Blue: dsPIC33AK512 ahead. Orange: XIAO MG24 ahead.

AddSubtractMultiplyDivideModulo
uint8_t 6.36× 17.3 M/s · 2.71 M/s 6.36× 17.3 M/s · 2.71 M/s 6.84× 17.3 M/s · 2.52 M/s 3.79× 9.26 M/s · 2.44 M/s 4.08× 7.81 M/s · 1.92 M/s
uint16_t 4.36× 12.8 M/s · 2.94 M/s 4.38× 12.8 M/s · 2.93 M/s 5.42× 15.9 M/s · 2.93 M/s 4.44× 9.26 M/s · 2.09 M/s 4.42× 7.81 M/s · 1.77 M/s
uint32_t 3.20× 10.2 M/s · 3.19 M/s 3.20× 10.2 M/s · 3.19 M/s 4.11× 12.1 M/s · 2.93 M/s 3.41× 7.52 M/s · 2.21 M/s 3.44× 6.76 M/s · 1.96 M/s
uint64_t 4.12× 9.71 M/s · 2.36 M/s 4.11× 9.71 M/s · 2.36 M/s 3.12× 6.14 M/s · 1.97 M/s 1/2.87× 99.2 k/s · 285 k/s 1/2.85× 99.8 k/s · 285 k/s
float 2.67× 8.48 M/s · 3.18 M/s 2.67× 8.48 M/s · 3.18 M/s 2.66× 8.48 M/s · 3.18 M/s 4.10× 6.33 M/s · 1.54 M/s 6.22× 1.98 M/s · 318 k/s
double 22.9× 8.48 M/s · 370 k/s 23.0× 8.48 M/s · 368 k/s 16.8× 8.48 M/s · 503 k/s 16.7× 6.33 M/s · 379 k/s 12.0× 1.98 M/s · 165 k/s

Where they sit in the fleet

Keep comparing

Swap sides