4 ms·
If you're wondering why the Teensy does so well (as I was), it's because the core is running at four times the clock rate of the nearest comparator.
by regularfry 2y ago
If you're wondering why the Teensy does so well (as I was), it's because the core is running at four times the clock rate of the nearest comparator.
- magicalhippo 2y agoIt's also sporting a much more advanced ARM core[1], Cortex-M7, compared to most of the other ARM boards which had Cortex-M0(+) cores. The M7 supports cache unlike the M0(+), and the processor used[2] has 64kB of it, split evenly into instruction and data cache. It also supports branch speculation which the M0(+) does not. While the Teensy has 4.5x the clock frequency of the Pico 1, the Teensy is 8x faster. Main outlier is the Pico 2 with a Cortex-M33, though still at a reduced clockspeed compared to the Teensy. From what I can see[3] it does not have cache for its on-board memory, "just" branch speculation like the M7. [1]: https://en.wikipedia.org/wiki/ARM_Cortex-M https://en.wikipedia.org/wiki/ARM_Cortex-M [2]: https://www.nxp.com/part/MIMXRT1062DVL6A https://www.nxp.com/part/MIMXRT1062DVL6A [3]: https://datasheets.raspberrypi.com/rp2350/rp2350-product-brief.pdf https://datasheets.raspberrypi.com/rp2350/rp2350-product-bri...
- weinzierl 2y agoIf you compare it to the only other board in the table with more than 300 MHz (and the only RISC-V) you can see that Teensy outperforms it by a margin even when the results are scaled by clock speed. Of course it would only be a complete picture taking power consumption into consideration.
- johnsondavies 2y agoGood idea - I'll add a column to the tables giving the current consumption for each board.
- magicalhippo 2y agoGiven that it seems one can overclock[1] the RP2350 to 600MHz, it would be interesting to compare it to the Teensy at same frequency. [1]: https://forums.raspberrypi.com/viewtopic.php?t=375975 https://forums.raspberrypi.com/viewtopic.php?t=375975
- Neywiny 2y agoAlso the M7 is a superscaler. It's not mentioned often, but if the task allows it, you can use what's essentially 1.5x the execution units of the smaller cores. It's not a complete 2x, but I'm sure it helps.