GPU Performance with Debian

Hi there, I want to test the GPU Performance if Mali/Panfrost driver is working correct:
I’ve done these setting with the howto from
add-apt-repository ppa:liujianfeng1994/panfork-mesa
add-apt-repository ppa:liujianfeng1994/rockchip-multimedia
Here are the results:
root@rock-5b:/home/andreas# glmark2-es2
arm_release_ver of this libmali is ‘g6p0-01eac0’, rk_so_ver is ‘5’.

glmark2 2021.02

=======================================================
OpenGL Information
GL_VENDOR: ARM
GL_RENDERER: Mali-LODX
GL_VERSION: OpenGL ES 3.2 v1.g6p0-01eac0.efb75e2978d783a80fe78be1bfb0efc1

[build] use-vbo=false: FPS: 505 FrameTime: 1.980 ms
[build] use-vbo=true: FPS: 485 FrameTime: 2.062 ms
[texture] texture-filter=nearest: FPS: 510 FrameTime: 1.961 ms
[texture] texture-filter=linear: FPS: 511 FrameTime: 1.957 ms
[texture] texture-filter=mipmap: FPS: 516 FrameTime: 1.938 ms
[shading] shading=gouraud: FPS: 470 FrameTime: 2.128 ms
[shading] shading=blinn-phong-inf: FPS: 461 FrameTime: 2.169 ms
[shading] shading=phong: FPS: 497 FrameTime: 2.012 ms
[shading] shading=cel: FPS: 547 FrameTime: 1.828 ms
[bump] bump-render=high-poly: FPS: 450 FrameTime: 2.222 ms
[bump] bump-render=normals: FPS: 569 FrameTime: 1.757 ms
[bump] bump-render=height: FPS: 528 FrameTime: 1.894 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 539 FrameTime: 1.855 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 486 FrameTime: 2.058 ms
[pulsar] light=false:quads=5:texture=false: FPS: 618 FrameTime: 1.618 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 315 FrameTime: 3.175 ms
[desktop] effect=shadow:windows=4: FPS: 431 FrameTime: 2.320 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 146 FrameTime: 6.849 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 142 FrameTime: 7.042 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 197 FrameTime: 5.076 ms
[ideas] speed=duration: FPS: 307 FrameTime: 3.257 ms
[jellyfish] : FPS: 431 FrameTime: 2.320 ms
[terrain] : FPS: 170 FrameTime: 5.882 ms
[shadow] : FPS: 727 FrameTime: 1.376 ms
[refract] : FPS: 297 FrameTime: 3.367 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 800 FrameTime: 1.250 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 597 FrameTime: 1.675 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 602 FrameTime: 1.661 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 493 FrameTime: 2.028 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 493 FrameTime: 2.028 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 493 FrameTime: 2.028 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 494 FrameTime: 2.024 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 495 FrameTime: 2.020 ms

                              glmark2 Score: 464 

=======================================================
root@rock-5b:/home/andreas#

Is this a good Score?
Thanks
Andreas

I’m getting 850 on mine using Ubuntu Jammy, and that’s still quite low. We should be getting at least 3000 once the driver situation is sorted out.

The line

arm_release_ver of this libmali is ‘g6p0-01eac0’, rk_so_ver is ‘5’.

points that in your case glmark is using the “blob” driver, not Panfrost (the other evidence is the “terrain” test scoring 170 fps, which is not yet achievable with Panfrost). Vendor/Renderer/Version strings confirm that as well. Furthermore, the latest firmware version is g15p0-01eac0, so you’ve got the old one.

Anyway, my idea of a “good” score with Rock 5 is something like this:

ginkage@rock-5b:~$ PAN_MESA_DEBUG=gofaster glmark2-es2-wayland
=======================================================
    glmark2 2021.02
=======================================================
    OpenGL Information
    GL_VENDOR:     Panfrost
    GL_RENDERER:   Mali-G610 (Panfrost)
    GL_VERSION:    OpenGL ES 3.1 Mesa 23.0.0-devel
=======================================================
[build] use-vbo=false: FPS: 3122 FrameTime: 0.320 ms
[build] use-vbo=true: FPS: 6199 FrameTime: 0.161 ms
[texture] texture-filter=nearest: FPS: 7210 FrameTime: 0.139 ms
[texture] texture-filter=linear: FPS: 7224 FrameTime: 0.138 ms
[texture] texture-filter=mipmap: FPS: 7125 FrameTime: 0.140 ms
[shading] shading=gouraud: FPS: 3081 FrameTime: 0.325 ms
[shading] shading=blinn-phong-inf: FPS: 3509 FrameTime: 0.285 ms
[shading] shading=phong: FPS: 3482 FrameTime: 0.287 ms
[shading] shading=cel: FPS: 3225 FrameTime: 0.310 ms
[bump] bump-render=high-poly: FPS: 2011 FrameTime: 0.497 ms
[bump] bump-render=normals: FPS: 7350 FrameTime: 0.136 ms
[bump] bump-render=height: FPS: 7025 FrameTime: 0.142 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 4980 FrameTime: 0.201 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 2588 FrameTime: 0.386 ms
[pulsar] light=false:quads=5:texture=false: FPS: 2560 FrameTime: 0.391 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 809 FrameTime: 1.236 ms
[desktop] effect=shadow:windows=4: FPS: 2960 FrameTime: 0.338 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 560 FrameTime: 1.786 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 494 FrameTime: 2.024 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 409 FrameTime: 2.445 ms
[ideas] speed=duration: FPS: 1586 FrameTime: 0.631 ms
[jellyfish] <default>: FPS: 2880 FrameTime: 0.347 ms
[terrain] <default>: FPS: 137 FrameTime: 7.299 ms
[shadow] <default>: FPS: 2691 FrameTime: 0.372 ms
[refract] <default>: FPS: 397 FrameTime: 2.519 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 4607 FrameTime: 0.217 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 5615 FrameTime: 0.178 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 6194 FrameTime: 0.161 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 6492 FrameTime: 0.154 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 5476 FrameTime: 0.183 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 6463 FrameTime: 0.155 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 6498 FrameTime: 0.154 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 5735 FrameTime: 0.174 ms
=======================================================
                                  glmark2 Score: 3960
=======================================================

The recipe for it (on my maching) being:

  • Armbian Jammy;
  • Wayland desktop environment;
  • Custom kernel with “gofaster” patches (should already be present in the latest BSP);
  • Latest Panfrost (the one from PPA should be fine);
  • The latest Mali firmware;
  • CPU and GPU governors set to “performance”.

BTW, I do believe that this is not the limit.

In the future, won’t Radxa OS(not Armbian) aim to be faster?

Custom kernel with “gofaster” patches (should already be present in the latest BSP);

How do you do this? Google doesn’t seem to show up with any info on how to enable this custom kernel with gofaster