Teensy 4.0 vs dsPIC33AK512
Cortex-M7 (i.MX RT1062) at 600 MHz against dsPIC33A (dsPIC33AK512MPS506) at 200 MHz, on real hardware, same C kernels, clocks verified.
Teensy 4.0
Cortex-M7 (i.MX RT1062)
- Family
- Arm Cortex-M
- Board
- Teensy 4.0
- Clock
- 600 MHz
- float / double
- 32-bit / 64-bit
dsPIC33AK512
dsPIC33A (dsPIC33AK512MPS506)
- Family
- PIC / dsPIC
- Board
- dsPIC33AK512MPS506 Curiosity Nano
- Clock
- 200 MHz
- float / double
- 32-bit / 32-bit
Typical gap
6.37×
Teensy 4.0 faster, geometric mean of 30 cells
Biggest win for Teensy 4.0
55.9×
uint64_t divide
Closest cell
2.45×
double modulo
Clock for clock
2.12×
Teensy 4.0 needs fewer cycles per op (3.00× clock gap)
Operation by operation
Every cell
How many times faster Teensy 4.0 is than dsPIC33AK512, operations per second. Blue: Teensy 4.0 ahead. Orange: dsPIC33AK512 ahead.
| Add | Subtract | Multiply | Divide | Modulo | |
|---|---|---|---|---|---|
| uint8_t | 4.49× 77.4 M/s · 17.3 M/s | 4.36× 75.3 M/s · 17.3 M/s | 4.36× 75.3 M/s · 17.3 M/s | 5.65× 52.3 M/s · 9.26 M/s | 5.92× 46.3 M/s · 7.81 M/s |
| uint16_t | 5.87× 75.3 M/s · 12.8 M/s | 5.85× 75 M/s · 12.8 M/s | 4.32× 68.6 M/s · 15.9 M/s | 4.48× 41.5 M/s · 9.26 M/s | 4.80× 37.5 M/s · 7.81 M/s |
| uint32_t | 8.11× 82.8 M/s · 10.2 M/s | 8.40× 85.7 M/s · 10.2 M/s | 5.69× 68.6 M/s · 12.1 M/s | 5.23× 39.3 M/s · 7.52 M/s | 5.16× 34.8 M/s · 6.76 M/s |
| uint64_t | 6.50× 63.2 M/s · 9.71 M/s | 6.50× 63.2 M/s · 9.71 M/s | 7.13× 43.7 M/s · 6.14 M/s | 55.9× 5.54 M/s · 99.2 k/s | 55.6× 5.54 M/s · 99.8 k/s |
| float | 9.17× 77.7 M/s · 8.48 M/s | 9.17× 77.7 M/s · 8.48 M/s | 9.17× 77.7 M/s · 8.48 M/s | 4.27× 27 M/s · 6.33 M/s | 3.37× 6.67 M/s · 1.98 M/s |
| double | 6.60× 56 M/s · 8.48 M/s | 6.45× 54.7 M/s · 8.48 M/s | 5.16× 43.7 M/s · 8.48 M/s | 2.48× 15.7 M/s · 6.33 M/s | 2.45× 4.84 M/s · 1.98 M/s |