Teensy 4.0 vs Arduino Uno
Cortex-M7 (i.MX RT1062) at 600 MHz against ATmega328P at 16 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
Typical gap
388×
Teensy 4.0 faster, geometric mean of 30 cells
Biggest win for Teensy 4.0
1,586×
uint32_t divide
Closest cell
47.1×
double modulo
Clock for clock
10.4×
Teensy 4.0 needs fewer cycles per op (37.5× clock gap)
Operation by operation
Every cell
How many times faster Teensy 4.0 is than Arduino Uno, operations per second. Blue: Teensy 4.0 ahead. Orange: Arduino Uno ahead.
| Add | Subtract | Multiply | Divide | Modulo | |
|---|---|---|---|---|---|
| uint8_t | 158× 77.4 M/s · 490 k/s | 154× 75.3 M/s · 490 k/s | 168× 75.3 M/s · 448 k/s | 368× 52.3 M/s · 142 k/s | 325× 46.3 M/s · 142 k/s |
| uint16_t | 144× 75.3 M/s · 522 k/s | 144× 75 M/s · 522 k/s | 166× 68.6 M/s · 413 k/s | 597× 41.5 M/s · 69.5 k/s | 540× 37.5 M/s · 69.5 k/s |
| uint32_t | 242× 82.8 M/s · 342 k/s | 251× 85.7 M/s · 342 k/s | 508× 68.6 M/s · 135 k/s | 1,586× 39.3 M/s · 24.8 k/s | 1,405× 34.8 M/s · 24.8 k/s |
| uint64_t | 847× 63.2 M/s · 74.6 k/s | 847× 63.2 M/s · 74.6 k/s | 1,218× 43.7 M/s · 35.9 k/s | 363× 5.54 M/s · 15.3 k/s | 365× 5.54 M/s · 15.2 k/s |
| float | 791× 77.7 M/s · 98.3 k/s | 787× 77.7 M/s · 98.7 k/s | 894× 77.7 M/s · 87 k/s | 838× 27 M/s · 32.2 k/s | 64.9× 6.67 M/s · 103 k/s |
| double | 571× 56 M/s · 98.1 k/s | 555× 54.7 M/s · 98.6 k/s | 504× 43.7 M/s · 86.8 k/s | 487× 15.7 M/s · 32.2 k/s | 47.1× 4.84 M/s · 103 k/s |