Tried Nvidia's GTX 1080 - still no external GPU on a Pi

Earlier today I did a livestream on my YouTube channel to attempt using an Nvidia GeForce GTX 1080 on a Raspberry Pi Compute Module 4.

MSI Nvidia GeForce GTX 1080 Graphics Card GPU

As with all my testing, I'm documenting everything I learn in this GitHub issue, which is part of the Raspberry Pi PCI Express Card Database website.

It's only been a few hours, but I've already gotten good suggestions for better debugging than I was able to do on the stream. And someone pointed out it might be the case, due to 32-bit memory limitations on the BCM2711's PCIe bus, that no GPU with more than 4 GB of onboard RAM could work. Though it's hard to confirm there'd be no software workaround—even 1 and 2 GB graphics cards (AMD and Nvidia) are crashing the kernel in similar ways.

The full livestream is available on replay and is embedded below:

And in that livestream, I compared the 'chonky' size of the 1080 card to the diminutive ASRock Rack M2_VGA card I tested a few weeks ago, tried installing Nvidia's proprietary driver on 64-bit Pi OS (which locked up), tried recompiling the kernel with Nouveau (which locked up), and then documented all the failures in the GitHub issue linked earlier in this post.

I was expecting failure, and said as much at the beginning of the stream—5% chance of success, 10% chance of releasing the magic smoke—but it would be nice to get any graphics card to work well on a Pi, for a variety of uses. But probably not AAA gaming, since gaming on Linux is a tough proposition even in the best of circumstances.

Some people also suggested testing on an Nvidia Jetson board, or a Honeycomb, but the former is a bit pricey, and the latter seems to be unobtanium right now (as with so many components these days). I mean heck, I would also love to find a way to loan an Ampere server for a short time so I could basically use the best ARM hardware on offer... but alas those prices are astronomically beyond my budget right now :)

I'll keep plugging away, and hopefully if not me, then someone will get an AMD or Nvidia GPU working on the Pi. Coreforge is certainly close with an old Radeon 6450.

Comments

Here's a theory I've had: a lot of PCIe devices get their power from the PCIe slot. Could it be possible that the slot just can't supply the necessary power?

In this card's case, the power is partially supplied through the slot—in the video I also mentioned I plugged in PCIe power connectors to the 8-pin and 6-pin slot, to provide the needed 200+ Watts of power.

With this and other cards, I've also plugged them in through external powered risers and that has not helped the situation, so I'm 99% sure it's not a power issue.

What could a use case be for a system with such a CPU bottleneck?

Really cool work, excited to mess around with it once someone smarter than I gets it all figured out

I think that a lot of details about bootstrapping the gpu firmware etc are x86_64 specific. Amd had a arm board at one point and it also could not initialize any GPU. I really don't think it's a memory problem.

Hey, I think you were already working in the right direction. You already got some sort of frame buffer to display, it more or less shows the login prompt after auto login if you squint your eyes looking at those screenshots.

You could try compiling a new efistub kernel, with just the efifb driver and nothing else AMD/nVidia related.

You will need UEFI firmware for the Raspberry and you might need to fuzz around with card or bus initialization.

Either way, I would focus on getting a bare minimum frame buffer going first and not the final dressing on the cake ;)

Good luck in your journey, if only there were a running system where your could swap the card from and compare resource allocations...

Sorry for my ill knowledge but what is it that your doin as i am weirdly interested but have no idea what your talking about (simple mans terms pls)

Very good work. If a grafic card works out, there would be no more problems with the graphics driver (Less than OpenGl 3.0). Than, using Blender 2.8 would be possible on the RPI.