Video memory reported by GLX_MESA_query_renderer differs between amdgpu and radeon

Marek Olšák maraeo at gmail.com
Sun Dec 11 14:02:45 UTC 2016


I think that pinned VRAM memory (memory that's reserved for kernel use
only) is subtracted from the total VRAM size.

amdgpu DRM 3.9.0 has a new query that returns both the total physical
and total usable VRAM, but Mesa doesn't use it.

Marek

On Sat, Dec 10, 2016 at 11:31 PM, Kai Wasserbäch
<kai at dev.carbon-project.org> wrote:
> Alex Deucher wrote on 10.12.2016 23:03:
>> On Sat, Dec 10, 2016 at 4:52 PM, Kai Wasserbäch
>> <kai at dev.carbon-project.org> wrote:
>>> [Please CC me on all replies, I'm not subscribed to this list.]
>>>
>>> Dear Alex,
>>> Alex Deucher wrote on 10.12.2016 22:40:
>>>> On Fri, Dec 9, 2016 at 3:27 PM, Kai Wasserbäch
>>>> <kai at dev.carbon-project.org> wrote:
>>>>> [Please CC me on all replies, I'm not subscribed to this list.]
>>>>>
>>>>> Hey,
>>>>> I've been noticing that GLX_MESA_query_renderer reports less video memory when I
>>>>> use amdgpu for my Hawaii PRO GPU, than when I use radeon. Since I'm pretty happy
>>>>> with amdgpu (as I do not use HDMI audio) and it's the code, that gets active
>>>>> improvements, I'd like to stay with it, but having 40 MB of video memory
>>>>> "vanish" is not nice.
>>>>> With radeon GLX_MESA_query_renderer reports 4096 MB RAM (as expected, the R9 290
>>>>> was sold/advertised with that), while I'm seeing 4056 MB with amdgpu (last
>>>>> tested kernel: 4.8.13).
>>>>>
>>>>> As I'm not sure, whether this is a bug or rather some always reserved memory
>>>>> area, which gets subtracted before reporting the available memory, I didn't file
>>>>> a bug report and rather am writing this e-mail. If it's a bug I'm happy to file
>>>>> the report against amdgpu.
>>>>
>>>> IIRC, the driver interfaces used to get the information exposed via
>>>> that extension are slightly different.  radeon exposes the total
>>>> amount of vram while amdgpu reports the total amount of free vram.
>>>> The actual amount of free vram is probably pretty close.
>>>
>>> thanks for the explanation!
>>>
>>> But I'd like to point out that some of the automatic configuration tools shipped
>>> with games (and probably other programs) are deciding upon the reported values
>>> to which quality level they should default. Maybe reporting the theoretical VRAM
>>> might be better (you could always report the actual values through sysfs or some
>>> other channel)?
>>
>> I think all of the relevant info is available already, we'd just need
>> to update mesa to make both drivers report something consistent.  The
>> extension isn't clear on whether it should be free memory or total
>> memory.  The extension says:
>>
>>     GLX_RENDERER_VIDEO_MEMORY_MESA 1          Number of megabytes of video
>>                                               memory available to the renderer
>
> I agree, that the language of the spec isn't explicit in what should be reported.
>
>> That sort of implies free memory, but I guess most apps probably care
>> more about the overall memory size.
>
> From what I've seen, that seems the case (no matter through which extension this
> value is queried). It seems like this is how it's handled on Windows: if you
> have 4 GB of VRAM, we default to high level textures, if you have 8 GB, we
> default to ultra, etc.
>
> Cheers,
> Kai
>
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
>


More information about the amd-gfx mailing list