protonscr

Steam GLX Context does not support Direct Rendering (but it does)

steamclosed reviewedNot a bug
ValveSoftware/steam-for-linux#3087 · opened 2014-01-09 by m-decoster · updated 2014-01-10 · 2 comments · github
Mm-decoster 2014-01-09 github

I was getting errors trying to launch TF2 (glGetError() is missing) with primusrun so I decided to launch steam with primusrun instead as a last resort.

When I launch Steam with the command optirun -b primus steam, I get this warning message: "OpenGL GLX context is not using direct rendering, which may cause performance problems."

So I checked if this is indeed true: I ran optirun -b primus glxinfo | head -5 and got this output:

name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4

So I do have direct rendering enabled on my discrete graphics card? Am I misinterpreting this?

Anyway, I'm using the nvidia-319 drivers (pre-installed in Ubuntu 12.04), and here's the output of optirun -b primus glxinfo | grep OpenGL:

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 540M/PCIe/SSE2
OpenGL version string: 4.3.0 NVIDIA 319.32
OpenGL shading language version string: 4.30 NVIDIA via Cg compiler
OpenGL extensions:

Here's my system information:

Processor Information:
    Vendor:  GenuineIntel
    CPU Family:  0x6
    CPU Model:  0x2a
    CPU Stepping:  0x7
    CPU Type:  0x0
    Speed:  2201 Mhz
    8 logical processors
    4 physical processors
    HyperThreading:  Supported
    FCMOV:  Supported
    SSE2:  Supported
    SSE3:  Supported
    SSSE3:  Supported
    SSE4a:  Unsupported
    SSE41:  Supported
    SSE42:  Supported

Network Information:
    Network Speed:  

Operating System Version:
    Ubuntu 12.04.3 LTS (64 bit)
    Kernel Name:  Linux
    Kernel Version:  3.8.0-35-generic
    X Server Vendor:  The X.Org Foundation
    X Server Release:  11303000
    X Window Manager:  Compiz
    Steam Runtime Version:  steam-runtime-release_2013-10-23

Video Card:
    Driver:  Intel Open Source Technology Center Mesa DRI Intel(R) Sandybridge Mobile 

    Driver Version:  1.4 (3.0 Mesa 9.1.7)
    OpenGL Version: 1.4
    Desktop Color Depth: 24 bits per pixel
    Monitor Refresh Rate: 59 Hz
    VendorID:  0x10de
    DeviceID:  0xdf4
    Number of Monitors:  1
    Number of Logical Video Cards:  2
    Primary Display Resolution:  1920 x 1080
    Desktop Resolution: 1920 x 1080
    Primary Display Size: 13.58" x 7.64"  (15.55" diag)
                                            34.5cm x 19.4cm  (39.5cm diag)
    Primary VRAM Not Detected

Sound card:
    Audio device: Intel CougarPoint HDMI

Memory:
    RAM:  7899 Mb

Miscellaneous:
    UI Language:  English
    LANG:  en_US.UTF-8
    Microphone:  Not set
    Total Hard Disk Space Available:  133418 Mb
    Largest Free Hard Disk Block:  107705 Mb

Installed software:

Recent Failure Reports:
    Thu Jan  9 16:56:01 2014 GMT: file ''/tmp/dumps/assert_20140109175539_34.dmp'', upload yes: ''CrashID=bp-a2f71a76-223a-4f81-bfc2-889932140109''    

I'm not sure how to interpret this, but it seems like Steam is not running on my discrete graphics card? cat /proc/acpi/bbswitch shows that it's on though.

Ggdrewb-valve maintainer 2014-01-09 github

Steam is a 32-bit app, so make sure you're running 32-bit versions of glxinfo and such when testing.

Mm-decoster 2014-01-10 github

Turns out installing new nvidia drivers caused the 32 bit versions to be installed incorrectly. I have fixed this by reinstalling bumblebee and explicitly asking for the 32 bit drivers as well.

Nothing extracted yet.