Graphics Card on a Raspberry Pi: A Bold Experiment!

TECH NEWS – Although it requires a lot of adapters and software patches, Jeff Geerling has done the impossible on Raspberry Pi 5!

 

He was able to connect an AMD Radeon RX 460 (so it’s a pretty old graphics card) to the PCIe bus of the Raspberry Pi 5 and run DOOM 3 and Tux Racer at 4K resolution. The Pi 5 has a single PCIe 2.0 lane to connect most external accessories (most commonly an M2 SSD). Geerling uses an M2 slot on the Pi 5 to connect an external GPU dock to an M2-Oculink adapter, which connects AMD’s card to the minicomputer.

But it’s not that simple: the PCIe connector on the Pi 5 can only provide 5W of power, and for a graphics card in a PC, that’s usually 75W (and you’ll need to connect an additional power connector on top of that, depending on how much power the GPU draws). So Geerling used an external power supply to power AMD’s card. That’s it on the hardware side, but it’s even more complicated on the software side.

Geerling first introduced a software patch that bumps the PCIe lane from 2.0 to 3.0, which increases the bandwidth of the GPU, without which it would only have 1/8th, and this would severely degrade the graphics card’s performance. The Linux kernel had to be patched to include the open source AMDGPU driver, which has Arm support and also runs the RX 460 correctly (Geerling chose this because the card is relatively new on the Polaris architecture and the drivers are quite mature, and the card is relatively cheap and PCIe 3.0). Nvidia’s graphics cards were not an option because their open source drivers lag far behind Radeon’s. Patching and recompiling the kernel was not left out.

According to Geerling, graphics acceleration in the Chromium browser and GPU-accelerated video encoding/decoding did not work properly. So in games the otherwise quite complex system works fine most of the time, outside of games not so much.

Source: Ars Technica, Jeff Geerling

Spread the love
Avatar photo
theGeek is here since 2019.

theGeek TV