Librem 5 benchmarks

I decided to run some benchmarks on my computing devices to see if anything had changed in the last 5 years since the last time I checked the performance on the Librem 5.

Benchmark PInePhone 1.2b Convergence Librem 5 USA Google Pixel 8 Pro HP ZBook Firefly 14 G8
SoC Allwinner A64 NXP I.MX 8M Quad Google Tensor G3 Intel Core i7-1185G7
Specs 40nm, 4x 1.152GHz Cortex-A53, Mali-400 MP2, 3GB LPDDR3-1200? 28nm, 4x 1.5GHz Cortex-A53, GC7000Lite, 3GB LPDDR4-3200 4nm, 1x 2.91GHz Cortex-X3, 4x 2.37GHz Cortex-A715, 4x1.7GHz Cortex-A510, Mali-G715 MP7, 12GB LPDDR5 10nm, 4x 4.8GHz, Iris Xe, 16GB DDR4-6400
OS (kernel) Mobian forky (Linux 6.18) PureOS 11 Crimson (Linux 6.18) /e/OS 4.2 (6.1.124-android14) PluriOS 24.04 (Linux 6.17)
Geekbench 6 single-core 109 146 1751 2073
- File Compression 146 220 1545 1894
- Navigation 244 352 1377 1907
- HTML5 Browser 153 208 2156 1954
- PDF Renderer 176 231 1971 2066
- Photo Library 91 117 1730 1896
- Clang 169 220 2093 2320
- Text Processing 126 154 1652 2200
- Asset Compression 135 194 1775 2123
- Object Detection 35 44 1956 2056
- Background Blur 41 52 1632 2463
- Horizon Detection 163 223 2043 2753
- Object Remover 56 69 1450 1652
- HDR 88 120 1762 1931
- Photo Filter 88 115 1654 2348
- Ray Tracer 126 174 1418 1711
- Structure from Motion 75 96 1913 2326
Geekbench 6 multi-core 278 477 4384 5475
- File Compression 222 448 2930 3028
- Navigation 559 959 4742 7220
- HTML5 Browser 446 701 6290 5098
- PDF Renderer 443 945 5830 7144
- Photo Library 291 465 5012 6259
- Clang 432 862 5711 7069
- Text Processing 148 214 1712 2457
- Asset Compression 562 752 6103 8566
- Object Detection 105 172 3399 3428
- Background Blur 68 175 3728 7084
- Horizon Detection 402 753 5814 6848
- Object Remover 195 305 2972 5421
- HDR 283 469 4689 5185
- Photo Filter 173 293 4454 4433
- Ray Tracer 444 722 4829 8155
- Structure from Motion 254 385 5896 6665
sysbench cpu (events/s) 2100.41 2953.01 15452.39
sysbench RAM (MiB/s) 245.17 1426.68 9276.52
sysbench file seqrd (MiB/s) 24.76 62.96 8857.58
sysbench file seqwr (MiB/s) 19.64 26.35 12.03
sysbench file rndrd (MiB/s) 17.12 55.10 7821.03
sysbench file rndwr (MiB/s) 5.79 9.02 11.25
glmark2* 54 143 359 2261
glmark2-es2-wayland** 73 178
Source GB6 GB6 GB6 GB6

* Using glmark2 2023.01, but Pixel 8 Pro uses 100x100 surface size, and others use 600x800 windowed.
** Using glmark2-es2-wayland --fullscreen, which defaults to a 720x1440 canvas on both phones.
To run the sysbench commands:

sysbench memory run
sysbench cpu --threads=4 run 
or 
sysbench cpu --threads=8 run 
sysbench fileio --file-total-size=4G prepare
sysbench fileio --file-total-size=4G --file-test-mode=seqrd run
sysbench fileio --file-total-size=4G --file-test-mode=rndrd run
sysbench fileio --file-total-size=4G --file-test-mode=rndwr run
sysbench fileio --file-total-size=4G --file-test-mode=seqwr run
sysbench fileio cleanup

The Librem 5 is 34% better than the PinePhone in single core performance and 72% better in multi-core performance according to Geekbench 6. However, what really makes the PinePhone slow is its RAM, eMMC and GPU. According to sysbench, the Librem 5’s RAM speed is 5.8 times faster than the PinePhone’s RAM. The PinePhone had a kernel patch that allows it to run at a higher RAM speed, but I don’t see any improvement in the PinePhone’s RAM benchmarks compared to 5 years ago, so I don’t think Mobian has increased the RAM speed. (I don’t know how to check the RAM speed.)

Sequential reads from the eMMC are 2.5 times faster and random reads are 3.2 times faster in the Librem 5 than the PinePhone. However, there isn’t as much difference in the write performance to the eMMC between the two phones. PINE64 never fixed its boards to access its eMMC twice as fast, and I never dared take a soldering iron to my PinePhone’s circuit board like some people to improve the eMMC performance. The end result is that it takes the PinePhone much longer to load apps than the Librem 5.

The L5’s GPU performance is 2.7 times the PinePhone’s. Millipixels uses the GPU to process and encode photos in the L5, which is why it is much faster than in the PinePhone.

However, the performance of the Librem 5 isn’t even close to a modern Android smartphone. The Pixel 8 Pro launched in 2023 has 12.0 times the single-core CPU performance of the L5 and 9.2 times the multi-core performance, according to Geekbench 6. The Pixel 8 Pro has an order of magnitude better CPU performance while consuming less energy than the Librem 5.

I also included the benchmarks from my laptop just for a comparison. For some reason, the write speeds to my laptop’s NMVe4 SSD were even slower than the PinePhone, but I suspect that is some problem with sysbench not measuring it correctly.

At some point, better performance stops translating to more utility for the user, so these differences in benchmarks don’t matter. I stopped caring about my PC’s performance over a decade ago. However, I really notice the difference in the processing power of the Librem 5 compared to a recent Android phone. I especially notice the difference in the load times for apps and taking photos, but I also notice it in the speed of the interface. Mostly I notice how much hotter the L5 becomes in my hand compared to an Android phone with an integrated mobile SoC, and how much energy the L5 consumes.

On the other hand, it is nice to have a phone that will never stop getting software updates. Every time, I pick up an Android phone, I am always shocked by the age of the kernel. Google is promising to provide 2 major version kernel upgrades for the Pixel 8, and Qualcomm is promising the same for Snapdragon 7/8 released in 2025 and later, but most people will never get a kernel upgrade for their phones. The question is whether there still be people using the Librem 5 ten years from now, considering the performance difference.

5 Likes

To me the L5 gpu peak 8.0 times performance than PainPhone.

Yes.

That’s strange.

For me, for a collection of 4 middle-of-the-road somewhat mature computers with at most NVMe PCIe Gen 3 SSDs (but all with SSDs of some sort), I get consistently somewhere in the range 94-118 MiB/s. For a much more recent computer with an NVMe PCIe Gen 4 SSD, it varies wildly between 170 and 670 MiB/s but then suddenly seems to settle for a while at around 20 MiB/s. So, yeah, something odd with the testing. And not just your computer / your environment.

1 Like

Running glmark2-es2-wayland --fullscreen on a Librem 5 with PureOS crimson using the internal screen in portrait orientation gives me the score of 248, while doing that on dawn with latest etnaviv stuff backported results in the score of 269. How did you end up with 143?

  1. NVMe drives can get hot, it could be throttling due to temperature.
  2. The speed for most NVMe is very dependent on cache speeds and flattening that much is a symptom of cache exhaustion (small) combined with slower NAND storage.

I just used glmark2. When I use glmark2-es2-wayland --fullscreen (which uses a 1440x720 canvas on both phones), I get 281 on the Librem 5 and 107 on the PinePhone (with 3GB RAM).

In my previous test I did the test from ssh and the screens were going to sleep. I decided to run the tests again from inside the terminal on the phones. I set the screens to not go to sleep, turned off all power-saving, plugged in both phones, and set scaling to 100% and resolution to 720x1440 on both phones. Now with glmark2-es2-wayland --fullscreen, I get 178 on the Librem 5 and 73 on the PinePhone, and I have gotten the same results two times in a row.

Strangely, when I run glmark2-es2-wayland --size 720x1440 on my laptop, I get 174, but when I run the same test in X11 using glmark2-es2 --size 720x1440, I get 903. I’m using PluriOS with Cinnamon, which is our custom distro based on Ubuntu 24.04. Ubuntu 24.04 lists Cinnamon in Wayland as “experimental”, so I am guessing that something isn’t implemented correctly, because normally Wayland is faster than X11 when I have benchmarked it in the past. At any rate, I’m going to add these results to the table above.