Raspberry Pi 5 GPU Benchmarks

Raspberry Pi 5 vs. Raspberry Pi 4 graphics benchmarks by Michael Larabel for a future article. ARMv8 Cortex-A72 testing with a BCM2835 Raspberry Pi 400 Rev 1.0 and vc4drmfb on Debian 11 via the Phoronix Test Suite.

HTML result view exported from: https://openbenchmarking.org/result/2309287-NE-2309280NE47.

Raspberry Pi 5 GPU BenchmarksProcessorMotherboardMemoryDiskGraphicsMonitorNetworkChipsetOSKernelDisplay ServerOpenGLCompilerFile-SystemScreen ResolutionDesktopRaspberry Pi 5Raspberry Pi 4ARMv8 Cortex-A76 @ 2.40GHz (4 Cores)BCM2835 Raspberry Pi 5 Model B Rev 1.08GB32GB SL32GV3D 7.1 8GBDELL P2415QDevice 1de4:0001Debian 126.1.0-rpi3-rpi-2712 (aarch64)X Server + Wayland3.1 Mesa 23.2.0~rc3-1+rpt3GCC 12.2.0ext43840x2160ARMv8 Cortex-A72 @ 1.80GHz (4 Cores)BCM2835 Raspberry Pi 400 Rev 1.0Broadcom BCM27114096MB128GB SF128vc4drmfbDELL P2210HDebian 115.15.84-v8+ (aarch64)LXDEX Server 1.20.112.1 Mesa 20.3.5GCC 10.2.1 202101101920x1080OpenBenchmarking.orgKernel Details- Raspberry Pi 5: cfg80211.ieee80211_regdom=US- Raspberry Pi 4: snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1Compiler Details- Raspberry Pi 5: --build=aarch64-linux-gnu --disable-libquadmath --disable-libquadmath-support --disable-werror --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-fix-cortex-a53-843419 --enable-gnu-unique-object --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --enable-libphobos-checking=release --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-nls --enable-objc-gc=auto --enable-plugin --enable-shared --enable-threads=posix --host=aarch64-linux-gnu --program-prefix=aarch64-linux-gnu- --target=aarch64-linux-gnu --with-default-libstdcxx-abi=new --with-gcc-major-version-only --with-target-system-zlib=auto -v - Raspberry Pi 4: --build=aarch64-linux-gnu --disable-libquadmath --disable-libquadmath-support --disable-werror --enable-bootstrap --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-fix-cortex-a53-843419 --enable-gnu-unique-object --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --enable-libphobos-checking=release --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-link-mutex --enable-multiarch --enable-nls --enable-objc-gc=auto --enable-plugin --enable-shared --enable-threads=posix --host=aarch64-linux-gnu --program-prefix=aarch64-linux-gnu- --target=aarch64-linux-gnu --with-build-config=bootstrap-lto-lean --with-default-libstdcxx-abi=new --with-gcc-major-version-only --with-target-system-zlib=auto -v Processor Details- Scaling Governor: cpufreq-dt ondemandPython Details- Raspberry Pi 5: Python 3.11.2- Raspberry Pi 4: Python 3.9.2Security Details- Raspberry Pi 5: gather_data_sampling: Not affected + itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + mmio_stale_data: Not affected + retbleed: Not affected + spec_rstack_overflow: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl + spectre_v1: Mitigation of __user pointer sanitization + spectre_v2: Mitigation of CSV2 BHB + srbds: Not affected + tsx_async_abort: Not affected - Raspberry Pi 4: itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + mmio_stale_data: Not affected + retbleed: Not affected + spec_store_bypass: Vulnerable + spectre_v1: Mitigation of __user pointer sanitization + spectre_v2: Vulnerable + srbds: Not affected + tsx_async_abort: Not affected

Raspberry Pi 5 GPU Benchmarksyquake2: OpenGL 3.x - On - On - 1920 x 1080yquake2: OpenGL 3.x - Off - On - 1920 x 1080yquake2: OpenGL 3.x - On - Off - 1920 x 1080yquake2: OpenGL 3.x - Off - Off - 1920 x 1080yquake2: OpenGL ES 3.x - On - On - 1920 x 1080yquake2: OpenGL ES 3.x - Off - On - 1920 x 1080yquake2: OpenGL ES 3.x - On - Off - 1920 x 1080yquake2: OpenGL ES 3.x - Off - Off - 1920 x 1080glmark2: 1920 x 1080ncnn: Vulkan GPU - mobilenetncnn: Vulkan GPU-v2-v2 - mobilenet-v2ncnn: Vulkan GPU-v3-v3 - mobilenet-v3ncnn: Vulkan GPU - shufflenet-v2ncnn: Vulkan GPU - mnasnetncnn: Vulkan GPU - efficientnet-b0ncnn: Vulkan GPU - blazefacencnn: Vulkan GPU - googlenetncnn: Vulkan GPU - vgg16ncnn: Vulkan GPU - resnet18ncnn: Vulkan GPU - alexnetncnn: Vulkan GPU - resnet50ncnn: Vulkan GPU - yolov4-tinyncnn: Vulkan GPU - squeezenet_ssdncnn: Vulkan GPU - regnety_400mncnn: Vulkan GPU - vision_transformerncnn: Vulkan GPU - FastestDetRaspberry Pi 5Raspberry Pi 4230.0239.0236.0237.630.131.271.877.121149.9513.949.633.649.0815.751.6034.42169.7025.2526.9959.1959.3143.6212.49649.126.0987.488.288.389.68.68.916.116.549198.5466.1749.3926.1554.9679.399.05123.26564.78131.1780.16273.48223.68137.5967.052008.6240.83OpenBenchmarking.org

yquake2

Renderer: OpenGL 3.x - AF: On - MSAA: On - Resolution: 1920 x 1080

OpenBenchmarking.orgFrames Per Second, More Is Betteryquake2 8.10Renderer: OpenGL 3.x - AF: On - MSAA: On - Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 450100150200250SE +/- 1.86, N = 3SE +/- 0.66, N = 3230.087.41. (CC) gcc options: -shared -lm -ldl -rdynamic -lSDL2 -O2 -pipe -fomit-frame-pointer -std=gnu99 -fno-strict-aliasing -fwrapv -fvisibility=hidden -MMD -fPIC

yquake2

Renderer: OpenGL 3.x - AF: Off - MSAA: On - Resolution: 1920 x 1080

OpenBenchmarking.orgFrames Per Second, More Is Betteryquake2 8.10Renderer: OpenGL 3.x - AF: Off - MSAA: On - Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 450100150200250SE +/- 2.81, N = 4SE +/- 0.46, N = 3239.088.21. (CC) gcc options: -shared -lm -ldl -rdynamic -lSDL2 -O2 -pipe -fomit-frame-pointer -std=gnu99 -fno-strict-aliasing -fwrapv -fvisibility=hidden -MMD -fPIC

yquake2

Renderer: OpenGL 3.x - AF: On - MSAA: Off - Resolution: 1920 x 1080

OpenBenchmarking.orgFrames Per Second, More Is Betteryquake2 8.10Renderer: OpenGL 3.x - AF: On - MSAA: Off - Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 450100150200250SE +/- 1.30, N = 3SE +/- 0.32, N = 3236.088.31. (CC) gcc options: -shared -lm -ldl -rdynamic -lSDL2 -O2 -pipe -fomit-frame-pointer -std=gnu99 -fno-strict-aliasing -fwrapv -fvisibility=hidden -MMD -fPIC

yquake2

Renderer: OpenGL 3.x - AF: Off - MSAA: Off - Resolution: 1920 x 1080

OpenBenchmarking.orgFrames Per Second, More Is Betteryquake2 8.10Renderer: OpenGL 3.x - AF: Off - MSAA: Off - Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 450100150200250SE +/- 0.99, N = 3SE +/- 0.35, N = 3237.689.61. (CC) gcc options: -shared -lm -ldl -rdynamic -lSDL2 -O2 -pipe -fomit-frame-pointer -std=gnu99 -fno-strict-aliasing -fwrapv -fvisibility=hidden -MMD -fPIC

yquake2

Renderer: OpenGL ES 3.x - AF: On - MSAA: On - Resolution: 1920 x 1080

OpenBenchmarking.orgFrames Per Second, More Is Betteryquake2 8.10Renderer: OpenGL ES 3.x - AF: On - MSAA: On - Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 4714212835SE +/- 0.00, N = 3SE +/- 0.03, N = 330.18.61. (CC) gcc options: -shared -lm -ldl -rdynamic -lSDL2 -O2 -pipe -fomit-frame-pointer -std=gnu99 -fno-strict-aliasing -fwrapv -fvisibility=hidden -MMD -fPIC

yquake2

Renderer: OpenGL ES 3.x - AF: Off - MSAA: On - Resolution: 1920 x 1080

OpenBenchmarking.orgFrames Per Second, More Is Betteryquake2 8.10Renderer: OpenGL ES 3.x - AF: Off - MSAA: On - Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 4714212835SE +/- 0.03, N = 3SE +/- 0.03, N = 331.28.91. (CC) gcc options: -shared -lm -ldl -rdynamic -lSDL2 -O2 -pipe -fomit-frame-pointer -std=gnu99 -fno-strict-aliasing -fwrapv -fvisibility=hidden -MMD -fPIC

yquake2

Renderer: OpenGL ES 3.x - AF: On - MSAA: Off - Resolution: 1920 x 1080

OpenBenchmarking.orgFrames Per Second, More Is Betteryquake2 8.10Renderer: OpenGL ES 3.x - AF: On - MSAA: Off - Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 41632486480SE +/- 0.00, N = 3SE +/- 0.12, N = 371.816.11. (CC) gcc options: -shared -lm -ldl -rdynamic -lSDL2 -O2 -pipe -fomit-frame-pointer -std=gnu99 -fno-strict-aliasing -fwrapv -fvisibility=hidden -MMD -fPIC

yquake2

Renderer: OpenGL ES 3.x - AF: Off - MSAA: Off - Resolution: 1920 x 1080

OpenBenchmarking.orgFrames Per Second, More Is Betteryquake2 8.10Renderer: OpenGL ES 3.x - AF: Off - MSAA: Off - Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 420406080100SE +/- 0.07, N = 3SE +/- 0.09, N = 377.116.51. (CC) gcc options: -shared -lm -ldl -rdynamic -lSDL2 -O2 -pipe -fomit-frame-pointer -std=gnu99 -fno-strict-aliasing -fwrapv -fvisibility=hidden -MMD -fPIC

GLmark2

Resolution: 1920 x 1080

OpenBenchmarking.orgScore, More Is BetterGLmark2 2023.01Resolution: 1920 x 1080Raspberry Pi 5Raspberry Pi 45010015020025021149

NCNN

Target: Vulkan GPU - Model: mobilenet

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: mobilenetRaspberry Pi 5Raspberry Pi 44080120160200SE +/- 0.10, N = 3SE +/- 1.94, N = 349.95198.54-fopenmp - MIN: 49.19 / MAX: 53.8-O3 -lgomp -lpthread -pthread - MIN: 194.17 / MAX: 219.311. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU-v2-v2 - Model: mobilenet-v2

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU-v2-v2 - Model: mobilenet-v2Raspberry Pi 5Raspberry Pi 41530456075SE +/- 0.05, N = 3SE +/- 1.02, N = 313.9466.17-fopenmp - MIN: 13.53 / MAX: 14.41-O3 -lgomp -lpthread -pthread - MIN: 64.34 / MAX: 97.371. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU-v3-v3 - Model: mobilenet-v3

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU-v3-v3 - Model: mobilenet-v3Raspberry Pi 5Raspberry Pi 41122334455SE +/- 0.04, N = 3SE +/- 0.86, N = 39.6349.39-fopenmp - MIN: 9.39 / MAX: 10.03-O3 -lgomp -lpthread -pthread - MIN: 47.7 / MAX: 57.961. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: shufflenet-v2

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: shufflenet-v2Raspberry Pi 5Raspberry Pi 4612182430SE +/- 0.04, N = 3SE +/- 0.55, N = 33.6426.15-fopenmp - MIN: 3.51 / MAX: 3.91-O3 -lgomp -lpthread -pthread - MIN: 25.17 / MAX: 38.681. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: mnasnet

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: mnasnetRaspberry Pi 5Raspberry Pi 41224364860SE +/- 0.08, N = 3SE +/- 0.72, N = 39.0854.96-fopenmp - MIN: 8.59 / MAX: 9.49-O3 -lgomp -lpthread -pthread - MIN: 53.41 / MAX: 82.611. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: efficientnet-b0

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: efficientnet-b0Raspberry Pi 5Raspberry Pi 420406080100SE +/- 0.12, N = 3SE +/- 1.00, N = 315.7579.39-fopenmp - MIN: 15.31 / MAX: 16.35-O3 -lgomp -lpthread -pthread - MIN: 77.6 / MAX: 88.491. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: blazeface

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: blazefaceRaspberry Pi 5Raspberry Pi 43691215SE +/- 0.00, N = 3SE +/- 0.18, N = 31.609.05-fopenmp - MIN: 1.54 / MAX: 1.78-O3 -lgomp -lpthread -pthread - MIN: 8.67 / MAX: 11.181. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: googlenet

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: googlenetRaspberry Pi 5Raspberry Pi 4306090120150SE +/- 0.03, N = 3SE +/- 2.18, N = 334.42123.26-fopenmp - MIN: 33.91 / MAX: 34.89-O3 -lgomp -lpthread -pthread - MIN: 120.08 / MAX: 141.421. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: vgg16

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: vgg16Raspberry Pi 5Raspberry Pi 4120240360480600SE +/- 0.20, N = 3SE +/- 2.50, N = 3169.70564.78-fopenmp - MIN: 166.31 / MAX: 177.27-O3 -lgomp -lpthread -pthread - MIN: 549.85 / MAX: 609.281. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: resnet18

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: resnet18Raspberry Pi 5Raspberry Pi 4306090120150SE +/- 0.10, N = 3SE +/- 2.68, N = 325.25131.17-fopenmp - MIN: 24.66 / MAX: 39.94-O3 -lgomp -lpthread -pthread - MIN: 127.45 / MAX: 147.51. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: alexnet

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: alexnetRaspberry Pi 5Raspberry Pi 420406080100SE +/- 0.06, N = 3SE +/- 1.04, N = 326.9980.16-fopenmp - MIN: 26.46 / MAX: 48.25-O3 -lgomp -lpthread -pthread - MIN: 77.99 / MAX: 94.431. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: resnet50

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: resnet50Raspberry Pi 5Raspberry Pi 460120180240300SE +/- 0.11, N = 3SE +/- 0.19, N = 359.19273.48-fopenmp - MIN: 58.06 / MAX: 68.62-O3 -lgomp -lpthread -pthread - MIN: 271.84 / MAX: 295.41. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: yolov4-tiny

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: yolov4-tinyRaspberry Pi 5Raspberry Pi 450100150200250SE +/- 0.16, N = 3SE +/- 0.29, N = 359.31223.68-fopenmp - MIN: 58.45 / MAX: 104.55-O3 -lgomp -lpthread -pthread - MIN: 220.49 / MAX: 246.881. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: squeezenet_ssd

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: squeezenet_ssdRaspberry Pi 5Raspberry Pi 4306090120150SE +/- 0.02, N = 3SE +/- 0.21, N = 343.62137.59-fopenmp - MIN: 42.99 / MAX: 44.47-O3 -lgomp -lpthread -pthread - MIN: 136.58 / MAX: 156.341. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: regnety_400m

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: regnety_400mRaspberry Pi 5Raspberry Pi 41530456075SE +/- 0.08, N = 3SE +/- 0.96, N = 312.4967.05-fopenmp - MIN: 12.19 / MAX: 13.12-O3 -lgomp -lpthread -pthread - MIN: 65.14 / MAX: 85.911. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: vision_transformer

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: vision_transformerRaspberry Pi 5Raspberry Pi 4400800120016002000SE +/- 0.51, N = 3SE +/- 15.11, N = 3649.122008.62-fopenmp - MIN: 626.69 / MAX: 668.91-O3 -lgomp -lpthread -pthread - MIN: 1900.59 / MAX: 2112.981. (CXX) g++ options: -rdynamic

NCNN

Target: Vulkan GPU - Model: FastestDet

OpenBenchmarking.orgms, Fewer Is BetterNCNN 20230517Target: Vulkan GPU - Model: FastestDetRaspberry Pi 5Raspberry Pi 4918273645SE +/- 0.08, N = 3SE +/- 0.17, N = 36.0940.83-fopenmp - MIN: 5.85 / MAX: 6.7-O3 -lgomp -lpthread -pthread - MIN: 40.04 / MAX: 62.821. (CXX) g++ options: -rdynamic


Phoronix Test Suite v10.8.5