Enable OpenGL 3.3 on Radeon R5 220 card

Hi, we have AFOX Radeon R5 220 card on our machine which should support OpenGL 3.3, however only 3.1 is enabled:

> glxinfo | grep OpenGL
OpenGL vendor string: X.Org
OpenGL renderer string: AMD CEDAR (DRM 2.50.0 / 5.15.6-1-default, LLVM 13.0.0)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 21.3.1
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.1 Mesa 21.3.1
OpenGL shading language version string: 1.40
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.1 Mesa 21.3.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
OpenGL ES profile extensions:

And latest Blender crashes with it and claims for newest drivers. Is it possible to enable OpenGL 3.3 on this graphics card?

More info:

> glxinfo -B
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: X.Org (0x1002)
    Device: AMD CEDAR (DRM 2.50.0 / 5.15.6-1-default, LLVM 13.0.0) (0x68f9)
    Version: 21.3.1
    Accelerated: yes
    Video memory: 2048MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 3.3
    Max compat profile version: 3.1
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.1
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 2047 MB, largest block: 2047 MB
    VBO free aux. memory - total: 1021 MB, largest block: 1021 MB
    Texture free memory - total: 2047 MB, largest block: 2047 MB
    Texture free aux. memory - total: 1021 MB, largest block: 1021 MB
    Renderbuffer free memory - total: 2047 MB, largest block: 2047 MB
    Renderbuffer free aux. memory - total: 1021 MB, largest block: 1021 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 2048 MB
    Total available memory: 3069 MB
    Currently available dedicated video memory: 2047 MB
OpenGL vendor string: X.Org
OpenGL renderer string: AMD CEDAR (DRM 2.50.0 / 5.15.6-1-default, LLVM 13.0.0)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 21.3.1
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 3.1 Mesa 21.3.1
OpenGL shading language version string: 1.40
OpenGL context flags: (none)

OpenGL ES profile version string: OpenGL ES 3.1 Mesa 21.3.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10

@akontsevich:

That card is difficult – it’s classed as being the generation “Volcanic Islands” (R5 200) but, the GPU is a “Cedar” with “TeraScale 2” architecture, which normally used by the “Evergreen” generation of cards.

Further references are here –

The Mesa version you’re using supports OpenGL 4.6 – <https://en.wikipedia.org/wiki/Mesa_(computer_graphics)>.

  • But, to support that OpenGL version, Mesa needs the AMD GCN architecture – your card has “TeraScale” architecture.

Yes, I saw it in specifications: it should support even 4.x.

[QUOTE=dcurtisfra;3091351Further references are here –
[ul]
[li]AFOX: <http://www.afox-corp.com/en/products_details.asp?proid=455&typeid=46&id=46&gt; [/li][li]AMD Radeon R5 220 OEM information: <https://www.techpowerup.com/gpu-specs/radeon-r5-220-oem.c2544&gt;. [/li][li]Cedar GPU information: <https://www.techpowerup.com/gpu-specs/amd-cedar.g113&gt;. [/li][/ul]
The Mesa version you’re using supports OpenGL 4.6 – <https://en.wikipedia.org/wiki/Mesa_(computer_graphics)&gt;.
[ul]
[li]But, to support that OpenGL version, Mesa needs the AMD GCN architecture – your card has “TeraScale” architecture. [/li][/ul]
[/QUOTE]
I saw these. And so what should I do next? Change driver, enable some settings, bugreport radeon driver - what?

A Radeon driver Bug Report will at least document the current behaviour with respect to a particular member of the AMD Radeon R5 220 card family but, please be aware that, there may be something specific to your card’s manufacturer which may or, may not, be supportable – the Radeon driver as such has to support everything up to and including the GCN “Caribbean Islands” cards, including all the cards with the TeraScale architecture –

  • Whether or not the Radeon driver maintainers will be willing to make changes to support your particular variant of the AMD Radeon R5 220 card family is a moot point.

You can try to change the card’s behaviour by means of the Radeon driver settings – <https://wiki.archlinux.org/title/ATI&gt;.Searching through the Kernel source code doesn’t reveal anything about Radeon driver parameters which can be set at boot time (except for Southern Islands and Sea Islands support: “radeon.si_support” and “radeon.cik_support” parameters – which doesn’t affect your because, you have neither a Southern nor Sea Islands card) – in contrast to the “amdgpu” driver needed for the current AMD graphics units.

But, “man radeon” reveals the settings which can be made in ‘/etc/X11/xorg.conf.d/20-radeon.conf’ – check the maximum DRI level.
You could check if, the ‘/usr/lib64/dri/r600_dri.so’ Mesa library is being used or not.

Did not find any related to the OpenGL version.

But, “man radeon” reveals the settings which can be made in ‘/etc/X11/xorg.conf.d/20-radeon.conf’ – check the maximum DRI level.

Check if it is set to DRI3? Will try. How does this affect OpenGL version?

You could check if, the ‘/usr/lib64/dri/r600_dri.so’ Mesa library is being used or not.

How to do that?

Anything else there?

@akontsevich:

Assuming that, you’re using X.Org rather than Wayland, please check ‘/var/log/Xorg.0.log’ for the following information –

  • “GLAMOR” or “EXA” related to “acceleration
    ” - “DRI3 enabled”

You need to check the acceleration method being used – your GPU is “pre-TAHITI” which means that the “EXA” acceleration method should be used, which may well be the cause of the lower OpenGL version being chosen.

  • Forcing the use of another OpenGL version is not possible.

[HR][/HR]To check if a library is being used, with the user “root”, execute “lsof /usr/lib64/dri/r600_dri.so” – at least the X.Org process “X” should be using that library – I don’t know if Wayland is supporting this acceleration related library.

  • Other commands to check if the library is really being used by “X” are “ldd /usr/bin/X” and “pldd «PID of the process “X”
    »” (you have to install the “glibc-utils” package to use the “pldd” command).

Terascale 2 & 3 supports OpenGL 4.5 with Mesa 3D nowadays.
Your installation is broken, or Mesa 3D drivers have fault. Check OpenGL properties with a fresh install. Try to use Leap 15.3.

But Blender 2.91+ requires GCN1+: Requirements — blender.org

Supported Graphics Cards

Always make sure to install the latest drivers from the graphics card manufacturer website. These requirements are for basic Blender operation, Cycles rendering using the GPU has higher requirements.

AMD

GCN 1st gen and newer. Since Blender 2.91, Terascale 2 architecture is fully deprecated, try using 2.90 (albeit not supported, it might still work) [list of all AMD GPUs]](List of AMD graphics processing units - Wikipedia)

, so you need another graphics card.
It is better to RTFM.

For CUDA/OptiX use Nvidia card(s) with proprietary drivers, OpenCL is not supported in Blender 3.0+. That means using Leap, not TW.
AMD GPUs are not good for Blender.

Where is Blender crash info?

So it should be 4.5? Do not want to fresh install - too much time. How Leap may help?

But Blender 2.91+ requires GCN1+: Requirements — blender.org

What is GCN1?

For CUDA/OptiX use Nvidia card(s) with proprietary drivers, OpenCL is not supported in Blender 3.0+. That means using Leap, not TW.
AMD GPUs are not good for Blender.

I wanted to buy Nvidia (which I have on other machine) year ago but in April this cryptocurrency madness began again so good nvidia card just not available here or they cost thousands of dollars instead of 3 hundreds. So I got the cheapest card available which had OpenGL 3.3 in specifications. Appeared it does not work. Why I should use Leap, what is the difference, older Blender? But I can install whatever version from snap.

Where is Blender crash info?

How to get it? Not much in console.

Test install may help in troubleshooting. Too much time is about 30 min?

List of all AMD GPUs

Blender works OK as portable version: Requirements — blender.org
With Leap Nvidia drivers work OK, with TW there are troubles in that case.
To use CUDA you need Nvidia Kepler or newer:
List of Nvidia graphics processing units - Wikipedia
Kepler (microarchitecture) - Wikipedia
Kepler card may cost from ~$20 on a secondhand market.

Blender 2.83 LTS is available: Blender 2.83 LTS — blender.org

It is not 30 min: need to ensure /home will stay safe, reinstall applications, snap, etc.