Comparison of Raspberry Pi 4 and 5 building Octez
I ordered my Raspberry Pi 5 in October and received it in November. It’s much more performant than the Raspberry Pi 4, with performance increases as much as two times.
I used the Pi 5 in a video made with Beata last week to show setting up a Tezos baker. The Pi 5 case comes with a heatsink and a fan. You can hear the fan but it is not too loud.
As a benchmark, I built Octez on both the 5 and an older Pi 4. This is the reference Tezos blockchain software implementation. I’m going to assume that you know what this is for the article.
One slight caveat. The Pi 4 is running Raspberry Pi OS 11 and the Pi 5 is running v12. I doubt this will make much difference.
Both Raspberry Pis have an 2TB SSD disc attached (same model). I put the source code on the SSD disc.
The OCaml package manager uses a directory in the user’s home directory. I symbolically linked this onto the SSD disc to avoid using the SD card. I suspect the SD card was used for part of the builds but hopefully it didn’t skew the results.
The machines were not heavily loaded. Any Octez processes were stopped before the build commenced. The RPi 4 is running a Tezos archive node and the RPi 5 is running a Tezos baker with a rolling node.
Both Pis were connected to the network via a cable. The processes using the network ran at different times to avoid skewing the statistics.
Each stage was measured using the time
command built into the shell (I use tcsh
). This outputs a time summary like this:
1.506u 0.683s 6:45.45 0.5% 0+0k 9920+8io 56pf+0w
We are interested in the third metric, the elapsed time of the process. The other metrics are documented in the time(1)
or the tcsh(1)
manual pages.
The first step is to install Rust. Most of this process is downloading files and installing them. There was no real difference between the two.
Then we cloned the Git repository of the Octez source code. The process requires some computation after the code download. The Raspberry Pi 5 wins on elapsed time (39 seconds vs 52 seconds).
Then we initialise the OCaml package manager. There was no significant difference between the two.
Then we ran make build-deps
. This builds all the OCaml packages required by the Octez software. I took care to make sure that there were no OCaml packages on the systems before I started. The RPi 5 won by a significant amount - the RPi 5 completed in 27 minutes and the RPi 4 needed well over an hour.
Finally we ran make
to build the Octez binaries. The RPi 5 outpaced the RPi 4 again. The RPi 5 took about 32 minutes and the RPi4 took about 54 minutes.
After the process, I restarted the Octez nodes on each machine. The RPi 4 was running an archive node and the RPi 5 was running a rolling node. The RPi 5 caught up very quickly with the network and the RPi 4 was much slower. I don’t have figures here but it felt significant.
The conclusion is, as expected, the Raspberry Pi 5 is far more performant than the 4 for CPU operations. It’s a shame that there is not a 16GB model. The platform is still limited to 8GB.
Here is the summary:
Process | RPi 4 | RPi 5 | Faster by |
---|---|---|---|
git clone | 52s | 32s | 1.625 |
opam init | 30s | 30s | 1 |
make build-deps | 1h21m16s | 27m5s | 3 |
make | 54m10s | 32m5s | 1.7 |