andrum99
Posts: 708
Joined: Fri Jul 20, 2012 2:41 pm

New graphics driver: does it work on older Pi's?

Mon Jun 24, 2019 9:23 pm

Hi folks. Just a quick question about the nice new graphics driver for the Pi 4 - is there a similar new driver for the other models of Pi? I've installed Buster on my Pi 3B and from what I can tell it is still using the old driver. Is there a new one available for the Pi 3B, and other older Pi's, or is it Pi 4-only?

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 23079
Joined: Sat Jul 30, 2011 7:41 pm

Re: New graphics driver: does it work on older Pi's?

Tue Jun 25, 2019 6:53 am

It should work. Enable fkms in config.txt
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

User avatar
Fidelius
Posts: 438
Joined: Wed Jan 01, 2014 8:40 pm
Location: Germany

Re: New graphics driver: does it work on older Pi's?

Tue Jun 25, 2019 8:00 am

It works on the Pi3, but is visibly slower with Raspbian Buster than it used to be with Raspbian Stretch, when it comes to OpenGL applications like Hatari, MAME, etc. For example on Hatari it's a 20% slow-down, meaning compared to Stretch there's now frame skips and the emulated sound isn't in sync anymore.

Will Buster's OpenGL slow-down on Videocore4-Pis go away with future versions of the (new) graphics driver, or is this a side-effect of the new graphics driver being optimised for Pi4's Videcore6 ?

P.S. to Andrum99: We can continue to use raspi-config in order to enable or disable the (new) graphics driver also under older Pis. The raspi-config then changes the /boot/config.txt file to:

Code: Select all

[all]
dtoverlay=vc4-fkms-v3d

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 7008
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: New graphics driver: does it work on older Pi's?

Tue Jun 25, 2019 8:26 am

Fidelius wrote:
Tue Jun 25, 2019 8:00 am
It works on the Pi3, but is visibly slower with Raspbian Buster than it used to be with Raspbian Stretch, when it comes to OpenGL applications like Hatari, MAME, etc. For example on Hatari it's a 20% slow-down, meaning compared to Stretch there's now frame skips and the emulated sound isn't in sync anymore.

Will Buster's OpenGL slow-down on Videocore4-Pis go away with future versions of the (new) graphics driver, or is this a side-effect of the new graphics driver being optimised for Pi4's Videcore6 ?
They have independent 3D drivers ("vc4" vs "v3d"), although they share the DRM/KMS compositing side. OpenGL calls are processed by libmesa and farmed off to the appropriate driver for the platform.
There shouldn't have been any significant regressions, although we have bumped up several years worth of mesa updates. If you can provide a relatively simple test case, then we can look at profiling it to see why things are slower.
On a Pi3 it would be useful to compare between vc4-kms-v3d and vc4-fkms-v3d - the former shifts the DRM/KMS side to the ARM, vs the firmware in the latter. I wouldn't expect any significant difference between the two, but it eliminates one variable.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

User avatar
Fidelius
Posts: 438
Joined: Wed Jan 01, 2014 8:40 pm
Location: Germany

Re: New graphics driver: does it work on older Pi's?

Tue Jun 25, 2019 1:10 pm

Thanks 6by9 for the informative explanation.

A relatively simple test case is glxgears -fullscreen from the mesa-utils package. Despite glxinfo showing the 3d renderer is active and with virtually no CPU load during the animation because of VC6 doing the work (without HW acceleration all four cores go up during glxgears), the gears' animation is (was) non-smooth in Buster, compared to Stretch.

These results I got yesterday.

Now before examining it any further I did an apt update & apt full-upgrade on the Pi3 with Buster. Some packages like "raspi bootloader" (from memory) and other system-stuff has been updated then: dated from either yesterday evening or from today morning (GMT).

In any case, these system updates and a reboot solved the problem: Now my observed OpenGL slow-down seems to be gone on Pi3 with Buster.

When I compare vc4-kms-v3d with vc4-fkms-v3d , which of the two would be more stable on a Pi3 if constantly being turned-on ?

andrum99
Posts: 708
Joined: Fri Jul 20, 2012 2:41 pm

Re: New graphics driver: does it work on older Pi's?

Tue Jun 25, 2019 2:34 pm

jamesh wrote:
Tue Jun 25, 2019 6:53 am
It should work. Enable fkms in config.txt
Thanks. There was nothing obvious that said "This is the driver the Pi 4 uses by default", so I wasn't sure which one it was. raspi-config also still says it is experimental - is this still the case on BCM283x?

Return to “General discussion”