
Here is a quick test of performances of the new Raspberry Pi 4 versus previous Raspberry Pi 3.
Both Raspberry Pi boards run the latest Raspbian Buster:
$ uname -a Linux raspberrypi 4.19.66-v7l+ #1253 SMP Thu Aug 15 12:02:08 BST 2019 armv7l GNU/Linux
1 – CPU Benchmark
To benchmark the CPU, I used Sysbench, a cross-platform and multi-threaded benchmark tool. The installation of Sysbench on Raspbian is easy:
$ sudo apt-get install sysbench
If you encounter some problem to install sysbench, try to update your raspbian with sudo apt-get update and sudo apt-get upgrade.
Now that Sysbench is installed, we can launch the multi-threaded (4 threads) CPU test with:
$ sysbench --test=cpu --cpu-max-prime=20000 --num-threads=4 run
The output of sysbench on the Raspberry Pi 4:
sysbench 0.4.12: multi-threaded system evaluation benchmark Running the test with following options: Number of threads: 4 Doing CPU performance benchmark Threads started! Done. Maximum prime number checked in CPU test: 20000 Test execution summary: total time: 62.8169s total number of events: 10000 total time taken by event execution: 251.2240 per-request statistics: min: 24.94ms avg: 25.12ms max: 68.14ms approx. 95 percentile: 25.10ms Threads fairness: events (avg/stddev): 2500.0000/4.24 execution time (avg/stddev): 62.8060/0.01
Results:
CPU score – lower is better
62 sec – Raspberry Pi 4 (Raspbian Buster)![]() |
64 sec – ASUS TinkerBoard (TinkerOS 2.0.11)![]() |
96 sec – Raspberry Pi 3 (Raspbian Buster)![]() |
The Raspberry Pi 4 shows a performance boost of +36% compared to the Raspberry Pi 3.
Update (2019.10.01)
The new RPi 4 is slightly faster than ASUS’ TinkerBoard. Looks like the TinkerBoard was the target of the RPi 4!
In 2016, I tested the RPi 3 vs RPi 2. And at that moment, with the 2016 version of Raspbian, the RPi 3 had a score of 120 sec in sysbench. Since the version of sysbench is the same (sysbench 0.4.12), nice improvements have been done in Raspbian since three years.
2 – GPU Benchmark
For the GPU benchmark, I used the latest GeeXLab 0.29.2.
The Raspberry Pi 4 comes with a new GPU, the VideoCore VI (Raspberry Pi 3 and previous boards have the VideoCore IV).
The GL_RENDERER string for the VideoCore 6 (RPi 4) is:
GL_RENDERER: V3D 4.2
The GL_RENDERER string for the VideoCore 4 (RPi 3) is:
GL_RENDERER: VC4 V3D 2.1
2.1 – GeeXLab
This first test is simple: I launched GeeXLab (default resolution: 800×400) and wrote down the framerate.
GeeXLab 0.29.2 on the RPi 4:
GeeXLab 0.29.2 on the RPi 3:
GPU score – higher is better
188 FPS – Raspberry Pi 4 (Raspbian Buster)![]() |
140 FPS – Raspberry Pi 3 (Raspbian Buster)![]() |
In this test, the Raspberry Pi 4 is +34% faster than the Raspberry Pi 3.
2.2 – GeeXLab + Shadertoy
This second test is focused on the GPU power and what’s better than a shadertoy test to evaluate the raw power of a GPU.
Shadertoy tests are available with GeeXLab in the demopack02/shadertoy/ folder. Launch GeeXLab and drag and drop one of the XML files.
The first shadertoy test is 09-noise-animation-electric.xml (resolution: 600×380):
GPU score – higher is better
138 FPS – Raspberry Pi 4 (Raspbian Buster) – OpenGL 2.1![]() |
90 FPS – Raspberry Pi 3 (Raspbian Buster) – OpenGL 2.1![]() |
In this test, the Raspberry Pi 4 is +53% faster than the Raspberry Pi 3.
The second test is 43-smiley-tutorial.xml (resolution: 800×480):
GPU score – higher is better
85 FPS – Raspberry Pi 4 (Raspbian Buster)![]() |
50 FPS – Raspberry Pi 3 (Raspbian Buster)![]() |
In this test, the Raspberry Pi 4 is +70% faster than the Raspberry Pi 3.
The third and last test is 21-radial_blur.xml (resolution: 800×600):
GPU score – higher is better
25 FPS – Raspberry Pi 4 (Raspbian Buster)![]() |
4 FPS – Raspberry Pi 3 (Raspbian Buster)![]() |
In this test, the Raspberry Pi 4 is… +525% faster than the Raspberry Pi 3!
This test is very heavy and the Raspberry Pi 3 has some difficulties to handle it properly (the desktop becomes unusable). But the Raspberry Pi 4 handles it without problems. The VideoCore 6 is a nice GPU. I hope we’ll see in, a near future, the support of OpenGL 3.2, or even OpenGL 4.2 added to Raspbian. And why not Vulkan? Because I quickly saw some Vulkan .so files in the latest version of Raspbian Buster…
Its nice to see such tests and such improvements. What is nice about rpi4 is that people are baking 64 bit linux OS with Ogl 3.1 support. It would be nice to test it too when its ready.
I don’t have time to test every OS for RPi 4, then for the moment, I test (and develop on) only the official Raspbian (still 32-bit). Now for the OpenGL 3.1 support, from what I understand, it’s a software implementation, only OpenGL 2.1 is accelerated. But sure, as soon as GL 3.x will be accelerated and when a 64-bit version of Raspbian will hit the street , I will test them!
glxinfo:
– OpenGL vendor string: Broadcom
– OpenGL renderer string: V3D 4.2
– OpenGL version string: 2.1 Mesa 19.1.0-devel
– OpenGL ES profile version string: OpenGL ES 3.0 Mesa 19.1.0-devel
– OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
What is a GREAT improvement in the 4 that after you power off the device it actually drains very low current like 0.01A. With other pis and orange pis when you turn them off they drain almost as much as when they are on, due to the lack of power mgmt.
I have did some thermal tests as well with external instrument and what I noticed that the chip which heats up the most on this board is not even the CPU but the tiny ethernet controller. It deserves a heatsink for all.
sweet je m’en vais le commander de ce pas 🙂
thanks JeGx for the test as always 😀