6

I was considering using a Raspberry Pi 4 as a cheap CI/CD server with Jenkins & Maven. Does anyone have a performance comparison of a Pi 4 against a modern Intel Core i3/i5/i7?

For example, how many times slower is a Pi 4, compared to a typical Intel Core i5 from 2020?

There are a ton of benchmarks out there that compare different Pis against each other or against similar competitors, but they are of no use for my use case: GPU, HDMI, fps, etc. are not really useful for a headless server that runs once a day after midnight and serves Jenkins. What probably matters here is CPU power and disk access.

As a side note, the Pi 4 consumes 3.4 W while a desktop/server consumes around 150 W. This means the Pi 4 is 44 times more efficient than a desktop in terms of power consumption.

The Impaler
  • 251
  • 2
  • 7

2 Answers2

8

After a few weeks I was finally able to perform a few benchmarks. The results are shown below:

Computer       Arch    CPU         RAM  Drive     Java    Build Time
-------------  ------  --------  -----  --------  ------  ----------
Lenovo T420    64-bit  i5-2520M  16 GB  SATA SSD  11+28         0:25
Lenovo T480    64-bit  i5-8350U  16 GB  NVMe SSD  11+28         0:12
Raspberry Pi3  32-bit             1 GB  USB2 SSD  11.0.7        4:32
Raspberry Pi4  64-bit             8 GB  USB3 SSD  11.0.8        1:10

The Lenovo T480 is a modern machine that is suitable for comparison. According to these numbers the Pi 4 is 5.8 times slower than a modern i5.

Considering the above, in my opinion a Raspberry Pi 4 (with an SSD) can work well as a fully functional CI/CD server. It can serve Jenkins all day long (for scheduling and reviewing builds) and can perform builds as needed. Waiting 1 minute for a build is no big deal for our team. Even it the application was 10 times bigger, it would still be perfectly acceptable, for the price (no ongoing fees, free Jenkins web site all day long).

Note: The exact same benchmark was performed in all four machines. It's a Maven build of an app with four modules (mvn clean install). All are hot builds, averaging the build time of two samples. All are second builds, all libraries already downloaded, after it was fully done just before.

The Impaler
  • 251
  • 2
  • 7
3

Jenkins and Maven by themselves don't consume any significant CPU time. You need to profile specific implementations of the compilers you're going to use. If you're interested in GCC and don't have a Pi for a test, I can tell you that building the Pale Moon browser on a Pi 4 takes a bit more than 3 hours, vs. 30 minutes on an i7.

Dmitry Grigoryev
  • 28,277
  • 6
  • 54
  • 147