Page 1 of 1

RP2040 and RP2350 Performance Comparison

Posted: Mon Oct 28, 2024 11:20 pm
by cfbsoftware
We have been comparing the performance of identical Oberon source code compiled using
  1. The Astrobe for RP2040 compiler for the Pi Pico
  2. The Astrobe for RP2350 compiler for the Pi Pico 2
As expected the RP2350 (using an Arm Cortex-M33 core) performs significantly better than the RP2040 (using an Arm Cortex-M0+ core) for the following reasons:

1. It can run at a clock speed of 150Mhz instead of 125MHz (up to 20% better)
2. It has single-cycle INTEGER division (up to 8x better)
3. More registers are available for use in Leaf Procedures (up to 80% better)
4. It has Floating Point hardware (up to 30x better)

Due to better than expected progress, we are now hoping to make a release candidate of Astrobe for RP2350 available to users of the Professional Edition of Astrobe for RP2040 in the next couple of weeks.

Re: RP2040 and RP2350 Performance Comparison

Posted: Thu Nov 07, 2024 1:30 am
by gray
In addition, the RP2350 has an AHB5 bus, while the RP2040 uses AHB-lite. Each of the two Cortex-M33 cores of the RP2350 has two bus masters (managers), one for fetching instructions, and one for load/store access. That is, code can be read in parallel to reading and writing memory or peripheral data.

In my admittedly limited testing, even programs built with Astrobe for RP2040 run a good 20% faster on the RP2350, at the same clock frequency (and not using division, leaf procedures, or the FPU).