I'm trying to setup a simple little configuration running a dedicated piece of software to display slides. Unfortunately the software uses some OpenGL extensions. No 3D mind you, just some basic font rendering layered on an image. There is no reason even software-rendered video on the Pi shouldn't handle it, but my first experiments were absurdly slow (~12 seconds to refresh the text on a slide).

I started testing with other OpenGL software and it seems my configuration has an issue. I realize that the Xorg drivers aren't taking advantage of the GPU yet and will be doing software rendering. Even so, my results are spectacularly slow. I've tried to par it down to just the basics for testing.

  1. Boot to current 2012-09-18 ArchLinux image for the Pi.
  2. Update package set and install a basic Xorg server:

    pacman --noconfirm -Syu
    pacman-key --init
    pacman --noconfirm -S xorg-xinit xorg-server xf86-video-fbdev
    pacman --noconfirm -S mesa mesa-demos
  3. See if it goes:

    echo glxgears > .xinitrc

Now I realize that glxgears isn't the best test in the world, but I see people on YouTube complaining that their 14-17 fps is too slow and some people claim to get as much as 27 fps out of glxgears on a pi. I'm getting 2 fps. Even with software rendering, this seems messed up.

12 frames in 5.0 seconds = 2.386 FPS
12 frames in 5.3 seconds = 2.278 FPS
14 frames in 5.4 seconds = 2.602 FPS
11 frames in 5.5 seconds = 2.009 FPS

The only hint I see is from the Xorg log:

(EE) FBDEV(0): FBIOBLANK: Operation not permitted
(==) FBDEV(0): Backing store disabled
(==) FBDEV(0): DPMS enabled

Up higher, it did inform me software rendering was going to be happening:

(II) GLX: Initialized DRISWRAST GL provider for screen 0

Things I don't think it is:

  • A hardware problem. I have 4 test boards, they all act the same.
  • A memory problem. The RAM all shows up and I've tried both the default gpu_mem=64 and customizing it to gpu_mem=256

What sort of performance should I expect out of a proper config running glxgears at it's default window size on an HDMI display? If 2 fps is not the target range and I should be getting something more reasonable, what packages or configuration changes are needed? I've tried piling on every xorg extension and OpenGL related library I can find and nothing has had a difference from the base results above.

  • I'm using raspbian, so I can't really answer, but just in case: first make sure that you use the new "fbturbo" xorg driver, at least you will get basic 2D acceleration and hardware cursor. Also, I discovered that the default raspbian image include the glx harware library, not the software renderer. I don't know Arch at all, but I think pacman --noconfirm -S xf86-video-fbturbo is a good start.
    – M Noit
    Mar 13, 2014 at 13:12
  • @AwesomeUser No, this issue has not been solved. It seemed unsolvable and I moved on to another solution, but I would revisit it it a heartbeat if somebody could point out what was going on.
    – Caleb
    Mar 16, 2014 at 7:26


Browse other questions tagged or ask your own question.