How to get out of llvmpipe on Rock 5A?

I have a Rock 5A with 8 GB RAM, and 512 GB nvme,as disk.
I tried with Debian 11 and Armbian (both Cinnamon and Xfce), all downloaded from the RADXA sites.
With all three System Info tells me that the graphics processor is llvmpipe, which is notorious for being a lackluster in performance.
I am developing a graphical program that needs high graphical responsivness…
I would like to switch to a driver that exploits the hardware capabilities of the Mali G610 GPU of the Rock 5A chip.
I am a newcomer to Linux, and have not been able so far to find how to do it…

Any help ? Thanks.
Alberto

Just use one of the third party systems like Armbian, Arch or Joshua Riek’s Ubuntu. You will need to choose between the “panfork” driver, the Panthor driver or the Mali blob driver.

Depending on which armbian version you used, you will need to add a ppa to install panfork. On JR Ubuntu it is already installed.

Thanks Incognito.
I am sure your answer would make a lot of sense to anybody versed in GNU/Linux, but, as I told, I am just a beginner in this field. I am just being converted by a friend that tries to take me out of the Devil’s Empire (you know what I mean…)… I am still in the phase where you need a step-by-step description of what to do…

What I know is that the Armbian (both Cinnamon and Xfce) that I tried are based on kernel 6.8.10, in case this is important.

If you, or anybody else, is willing to tell me the detailed instructions to switch to a hardware driver for the Mali chip, I will be much grateful to you… :slight_smile:

TIA
Alberto

Use the same method as you did previously to install one of the systems I recommended instead of the one you have now. This one is the easiest and comes with the GPU enabled out of the box:
https://joshua-riek.github.io/ubuntu-rockchip-download/

Armbian with kernel 6.8 will not have Panthor enabled. This will come with kernel 6.10. But you can use Panfork which is enabled by default on the system I linked to.

Thanks indeed Incognito. Knowing that it exists one distribution with the GPU already enabled is reassuring, no obscure (to me) commands to be issued…:crossed_fingers:

TNX

1 Like

If you’re developing a program, you probably can operate in Linux a bit. Your best bet is to develop it to work well under panthor, which is a driver for the mainline Linux kernel (will be available in Linux 6.10). It should come out soon.

The board support “legacy” kernel (now 5.10 or 6.1) can use the Mali blobs or Panfork. Panfork is not being updated and is a hack essentially (but works). This is the one on the Ubuntu I linked to.

Thanks for the suggestions. After having briefly tested Ubuntu, I appreciated the speed of the graphical rendering due to the Mali drivers, but on the other side I must say that the user interface of Ubuntu is disgusting…of course this is just a my personal opinion.
And additionally, I have the feeling that the opsys itself reacts in a sluggish way to my input…20 seconds to open a terminal window are unacceptable.
And the fact that neither make nor gcc are natively present in the distribution, but must be manually installed makes me think that the target of Ubuntu are not developers, but people accustomed to Windows who want to find a similar environment in GNU/Linux.

My application is a signal processing one, with a lot of computations… the user interface is developed with Lazarus, and the backend, where the computations (FFT, Hilbert, etc.) are done, is written in C++ and compiled with gcc.

Wayland performs best with the GPU drivers, you’re in for a major disappointment if you want to use another DE with X11. Honestly, if you are developing a commercial application that requires heavy graphics, RK3588 is not for you due to the poor GPU driver situation.

Thanks for your considerations. But the Rock 5A is not the final target for my application. As a matter of facts, its development is at an advanced state of completion and it runs on the Intel/AMD platform under LMDE Faye, where the biggest part of the debugging is done.
If you code a program with an eye to portability, then you can easily have it running on various platforms with just recompiling.
The choice of the RK3588s as a test platform has been dictated by the desire of evaluating what are the minimum requirements in terms of processing power and/or GPU…In other words…if it runs flawlessly on the RK3588s, I can be reassured that it will run on the majority of other CPUs around… :sunglasses:

Oh, you use Rock 5A… With the latest update I had a lot of trouble with “fork failed”, do you experience this at all? Might explain the slowdowns. Here’s an issue on github: https://github.com/Joshua-Riek/ubuntu-rockchip/issues/919

Please check “ulimit -a” and “ulimit -aH”, particularly “open files”, as I’ve been notified that some recent distros with recent kernels tend to present extreme values, which can cause some applications to allocate huge amounts of memory, or take ages trying to close all unused FDs under some circumstances. Every 10 years or so, some such changes appear, break tons of use cases and are reverted, so I wouldn’t be surprised that what you’re facing looks similar.

1 Like

Thank you, @willy! I’ll try (but almost any command fails so this one might too). As a non-developer I don’t know that much about these inner Linux workings. But it doesn’t happen on Rock 5B (admittedly with 16 GB of RAM)

No, I haven’t noticed the problems reported in that issue on github. I have a 8GB Rock 5A, not 4GB as reported there…
Anyway I have put everything on hold, waiting for the next-to-be-released kernel 6.10 which, together with Debian 12 with that kernel should solve all my problems…let’s hope…:slight_smile:

1 Like

There is a workaround posted on that issue, it seems to be a bug with the most recent 6.1 rkr3 kernel from Rockchip. I took time to dig into the commits and found nothing. So it’s likely I’ll need to bisect the kernel.

Sounds like a delicate operation.

It has been fixed; see https://github.com/Joshua-Riek/ubuntu-rockchip/issues/919#issuecomment-2227037115

1 Like