ValveSoftware / steam-for-linux

Issue tracking for the Steam for Linux beta client
4.21k stars 174 forks source link

ATI Driver doesn't seem to have access to RAM (shown in big picture mode) #1311

Closed boombatower closed 7 years ago

boombatower commented 11 years ago

Assume this is ATI driver issue so I will cross-post in their forum, but the big picture mode doesn't seem to think I have much ram when the card has 6GB (7970 Ghz 6GB).

image

Processor Information:
    Vendor:  GenuineIntel
    Speed: 3501 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:
    "openSUSE 12.2 (x86_64)" (64 bit)
    Kernel Name:  Linux
    Kernel Version:  3.7.6-22-desktop
    X Server vendor:  The X.Org Foundation
    X Server release:  11302000

Video Card:
    Driver:  ATI Technologies Inc. AMD Radeon HD 7900 Series 

    Driver Version:  4.2.12002 Compatibility Profile Context 9.012
    Desktop Color Depth: 24 bits per pixel
    Monitor Refresh Rate: 59 Hz
    VendorID Not Detected
    DeviceID Not Detected
    Number of Monitors:  3
    Number of Video Cards Not Detected
    Primary Display Resolution:  2560 x 1600
    Desktop Resolution: 6400 x 1600
    Primary Display Size: 25.24" x 15.75"  (29.72" diag)
                                            64.1cm x 40.0cm  (75.5cm diag)
    Primary VRAM Not Detected

Sound card:
    Audio device: Realtek ALC892

Memory:
    RAM:  32190 Mb

Miscellaneous:
    UI Language:  English
    LANG:  en_US.UTF-8
    Microphone:  Not set
    Total Hard Disk Space Available:  202061 Mb
    Largest Free Hard Disk Block:  189114 Mb
boombatower commented 11 years ago

http://devgurus.amd.com/thread/160348

johndrinkwater commented 11 years ago

Odd, I thought #1140 would have cured the memory detection problems.

boombatower commented 11 years ago

Based on referenced issue I also ran lspci

lspci -v -s 01:00.0
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Tahiti XT [Radeon HD 7970] (prog-if 00 [VGA controller])
        Subsystem: Advanced Micro Devices [AMD] nee ATI Device 3000
        Flags: bus master, fast devsel, latency 0, IRQ 57
        Memory at e0000000 (64-bit, prefetchable) [size=256M]
        Memory at f7e00000 (64-bit, non-prefetchable) [size=256K]
        I/O ports at e000 [size=256]
        Expansion ROM at f7e40000 [disabled] [size=128K]
        Capabilities: [48] Vendor Specific Information: Len=08 <?>
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Legacy Endpoint, MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Capabilities: [150] Advanced Error Reporting
        Capabilities: [270] #19
        Capabilities: [2b0] Address Translation Service (ATS)
        Capabilities: [2c0] #13
        Capabilities: [2d0] #1b
        Kernel driver in use: fglrx_pci

Not sure if that is part of the problem as my card has 6GB of RAM.

stevethepocket commented 11 years ago

Ha, that's the exact same amount it's telling me I have, and I have a Radeon HD 4850 with 1 GB.

You know, this might explain why we're getting such poor performance from Valve's games, if the system can only use a quarter gigabyte of our video memory...

EDIT: lshw and lspci both report only 256 megs of video memory for me as well, so whatever's going on is probably not limited to the Steam client.

@boombatower Where on AMD's site did you cross-post this? I'm registered there and I wanted to weigh in on this.

boombatower commented 11 years ago

Never really got much of a response, although it wasn't that good of a post.

http://devgurus.amd.com/thread/160348 (linked above)

Just updated to 13.4 driver and still seeing this same issue.

jgkamat commented 11 years ago

+1, AMD Catalyst 13.4, AMD Radeon HD 7660G, Opensuse 12.3

https://gist.github.com/jgkamat/3c2dae8c2cc9ef9946c8

stevethepocket commented 11 years ago

It might help to know that pulling up System Information tells me "Primary VRAM Not Detected". I dunno, is that the graphics driver's problem, or something with Linux itself? As far as I know, the graphics driver only concerns the GPU, but it might be going through that to find out how much VRAM I have.

jgkamat commented 11 years ago

Im thinking that the VRAM not being detected is a major performance concern...

Its probably the reason why I can run all settings high in TF2 windows, but I have to run all settings at min TF2 windows to get no input lag...

boombatower commented 11 years ago

I can confirm this is still happening as well with 13.4. I bumped amd thread.

kylescottmcgill commented 11 years ago

Im not trying to bump this, but you can set your video ram inside xorg.conf in the devices section like:

/etc/X11/xorg.conf

Section "Device"
    Driver "radeon" # or whichever other driver you use
    VideoRam 32768 # 32 MB
    #other stuff
EndSection
stevethepocket commented 11 years ago

@kylescottmcgill Out of curiosity, will that do anything to improve performance issues caused by games failing to detect VRAM, or will it just make lshw and lspci report the correct values?

kylescottmcgill commented 11 years ago

@stevethepocket I will admit, i haven't attempted to play anything on Linux with Steam but will give it a go later on tonight. But what i can confirm is that with more resources being reported, more resources are being used, and limitations such as the above are also lifted. Keep in mind YMMV when dealing with these sorts of things. I will report back later with some results.

stevethepocket commented 11 years ago

OK, I think I have a development. Apparently neither lspci nor lshw are supposed to report VRAM; for that, we have to pull up /var/log/Xorg.0.log and look for "Video RAM". Sure enough, we have these lines:

[    15.709] (--) fglrx(0): Video RAM: 1048576 kByte, Type: GDDR3
[    15.709] (II) fglrx(0): Video RAM override, using 1024000 kB instead of 1048576 kB

The second line is because I tried that trick @kylescottmcgill mentioned, using "1024000" because I wasn't sure if a gigabyte meant 1024 times 1024 or not in this case.

The problem, then, would seem to be with Steam, not the driver, if X can accurately gauge the VRAM size.

mhess126 commented 10 years ago

I also experience this issue. Both with fglrx drivers on HD7850 and open source radeon driver for HD5650

bootkiller commented 10 years ago

Same with my ATI HD4770 with OSS driver, Steam can't detect VRAM, Big Picture reports 256MB although my card has 512MB.

baos780 commented 10 years ago

I'm having the vram issue now, is there a fix yet?

stevethepocket commented 10 years ago

I know this much; it's not caused by the Radeon driver. Steam still reports this after removing it and upgrading to the latest open source driver.

baos780 commented 10 years ago

I'd just like to be able to get reasonable fps, say 60? I have dual radeon R9 270 in crossfire.

fglrx 14.6 Beta

Processor Information:
    Vendor:  AuthenticAMD
    CPU Family:  0x15
    CPU Model:  0x2
    CPU Stepping:  0x0
    CPU Type:  0x0
    Speed:  4000 Mhz
    8 logical processors
    8 physical processors
    HyperThreading:  Unsupported
    FCMOV:  Supported
    SSE2:  Supported
    SSE3:  Supported
    SSSE3:  Supported
    SSE4a:  Supported
    SSE41:  Supported
    SSE42:  Supported

Network Information:
    Network Speed:  

Operating System Version:
    Debian GNU/Linux 7.6 (wheezy) (64 bit)
    Kernel Name:  Linux
    Kernel Version:  3.2.0-4-amd64
    X Server Vendor:  The X.Org Foundation
    X Server Release:  11204000
    X Window Manager:  Mutter
    Steam Runtime Version:  steam-runtime-release_2014-04-15

Video Card:
    Driver:  ATI Technologies Inc. AMD Radeon R9 200 Series

    Driver Version:  4.4.12967 Compatibility Profile Context 14.20
    OpenGL Version: 4.4
    Desktop Color Depth: 24 bits per pixel
    Monitor Refresh Rate: 60 Hz
    VendorID:  0x1002
    DeviceID:  0x6811
    Number of Monitors:  1
    Number of Logical Video Cards:  2
    Primary Display Resolution:  1920 x 1080
    Desktop Resolution: 1920 x 1080
    Primary Display Size: 0.63" x 0.35"  (0.71" diag)
                                            1.6cm x 0.9cm  (1.8cm diag)
    Primary VRAM Not Detected

Sound card:
    Audio device: AV200

Memory:
    RAM:  16002 Mb

Miscellaneous:
    UI Language:  English
    LANG:  en_CA.UTF-8
    Microphone:  Not set
    Total Hard Disk Space Available:  910547 Mb
    Largest Free Hard Disk Block:  506837 Mb

Installed software:

Recent Failure Reports:
baos780 commented 10 years ago

removed debian, installed ubuntu. used the fglrx out of the box(not fglrx-updates). at some points I saw 100-120fps. Still have the video ram error with steam and I think it could really help performance.

so, same system, different os:

Processor Information:
    Vendor:  AuthenticAMD
    CPU Family:  0x15
    CPU Model:  0x2
    CPU Stepping:  0x0
    CPU Type:  0x0
    Speed:  4000 Mhz
    8 logical processors
    8 physical processors
    HyperThreading:  Unsupported
    FCMOV:  Supported
    SSE2:  Supported
    SSE3:  Supported
    SSSE3:  Supported
    SSE4a:  Supported
    SSE41:  Supported
    SSE42:  Supported

Network Information:
    Network Speed:  

Operating System Version:
    Ubuntu 14.04.1 LTS (64 bit)
    Kernel Name:  Linux
    Kernel Version:  3.13.0-32-generic
    X Server Vendor:  The X.Org Foundation
    X Server Release:  11501000
    X Window Manager:  GNOME Shell
    Steam Runtime Version:  steam-runtime-release_2014-04-15

Video Card:
    Driver:  ATI Technologies Inc. AMD Radeon R9 200 Series

    Driver Version:  4.3.12798 Compatibility Profile Context 13.35.1005
    OpenGL Version: 4.3
    Desktop Color Depth: 24 bits per pixel
    Monitor Refresh Rate: 60 Hz
    VendorID:  0x1002
    DeviceID:  0x6811
    Number of Monitors:  1
    Number of Logical Video Cards:  2
    Primary Display Resolution:  1920 x 1080
    Desktop Resolution: 1920 x 1080
    Primary Display Size: 0.63" x 0.35"  (0.71" diag)
                                            1.6cm x 0.9cm  (1.8cm diag)
    Primary VRAM Not Detected

Sound card:
    Audio device: AV200

Memory:
    RAM:  15949 Mb

Miscellaneous:
    UI Language:  English
    LANG:  en_CA.UTF-8
    Microphone:  Not set
    Total Hard Disk Space Available:  910419 Mb
    Largest Free Hard Disk Block:  501703 Mb

Installed software:

Recent Failure Reports:
stevethepocket commented 10 years ago

From the Steam community:

There is AFAIK no unified way of determing VRAM, that's why the GLX_MESA_query_renderer OpenGL extension was introduced last year. The free drivers do already support it, but it seems Steam is not using it, yet. As VRAM is only being accessed through a MMU, one can only get the size of the memory window being used without directly interacting with the driver.

So apparently this would be an easy fix if Valve were still paying attention to bug reports. I assume the same fix would have to be done on their games as well.

baos780 commented 10 years ago

hmm, so Valve no longer reads this?

baos780 commented 10 years ago

so, devs, any news? at least let me set my own ram?

mlu1109 commented 9 years ago

I only see 256 Mb of available RAM however drivers are installed. The GPU's an AMD Radeon HD 7730 M dualed with an Intel HD 4000 (selected GPU is the Radeon) and the drivers are installed using additional drivers provided with Ubuntu.

baos780 commented 9 years ago

That is all that is available until they fix this. The drivers have been amended to allow the proper detection of ram. Steam is slow to update. Or completely ignorant of this topic.

sylware commented 9 years ago

Weird indeed. Related to the source 2 engine port to steam overlay port? (good guess)

ghost commented 9 years ago

I will note that neither the nvidia binary driver nor fglrx implement GLX_MESA_query_renderer support. This is unfortunate, as it would be most useful.

Using lspci for VRAM detection hasn't worked for a long time. Graphics cards only map portions of VRAM through an aperture, and the only thing lspci will tell you is the size of this aperture.

baos780 commented 9 years ago

NVIDIA VRAM DETECTED! ubuntu with asus 960 card. my r9 270's are going in the garbage! lol

Processor Information: Vendor: AuthenticAMD CPU Family: 0x15 CPU Model: 0x2 CPU Stepping: 0x0 CPU Type: 0x0 Speed: 4000 Mhz 8 logical processors 8 physical processors HyperThreading: Unsupported FCMOV: Supported SSE2: Supported SSE3: Supported SSSE3: Supported SSE4a: Supported SSE41: Supported SSE42: Supported

Network Information: Network Speed:

Operating System Version: Ubuntu 14.04.2 LTS (64 bit) Kernel Name: Linux Kernel Version: 3.13.0-46-generic X Server Vendor: The X.Org Foundation X Server Release: 11501000 X Window Manager: GNOME Shell Steam Runtime Version: steam-runtime-release_2015-01-06

Video Card: Driver: NVIDIA Corporation GeForce GTX 960/PCIe/SSE2

Driver Version:  4.5.0 NVIDIA 346.35
OpenGL Version: 4.5
Desktop Color Depth: 24 bits per pixel
Monitor Refresh Rate: 60 Hz
VendorID:  0x10de
DeviceID:  0x1401
Number of Monitors:  1
Number of Logical Video Cards:  1
Primary Display Resolution:  1920 x 1080
Desktop Resolution: 1920 x 1080
Primary Display Size: 73.70" x 41.46"  (84.53" diag)
                                        187.2cm x 105.3cm  (214.7cm diag)
Primary Bus: PCI Express 16x
Primary VRAM: 2048 MB
Supported MSAA Modes:  2x 4x 8x 16x 

Sound card: Audio device: AV200

Memory: RAM: 16006 Mb

Miscellaneous: UI Language: English LANG: en_CA.UTF-8 Microphone: Not set Total Hard Disk Space Available: 17705 Mb Largest Free Hard Disk Block: 9998 Mb

Installed software:

Recent Failure Reports:

boombatower commented 9 years ago

Still occurs on recent Mesa (OSS driver) for ATI card (radeon hd 7970 ghz edition). Big Picture functions excellently though. :)

Video Card:
    Driver:  X.Org Gallium 0.4 on AMD TAHITI
    Driver Version:  3.0 Mesa 10.5.3
    OpenGL Version: 3.0
    Desktop Color Depth: 24 bits per pixel
    Monitor Refresh Rate: 59 Hz
    VendorID Not Detected
    DeviceID Not Detected
    Number of Monitors:  3
    Number of Video Cards Not Detected
    Primary Display Resolution:  2560 x 1600
    Desktop Resolution: 6400 x 1600
    Primary Display Size: 25.24" x 15.75"  (29.72" diag)
                                            64.1cm x 40.0cm  (75.5cm diag)
    Primary VRAM Not Detected

As per above comment I checked for the availability of GLX_MESA_query_renderer extension and it is present.

$ glxinfo 
name of display: :0
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
    GLX_ARB_create_context, GLX_ARB_create_context_profile, 
    GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample, 
    GLX_EXT_create_context_es2_profile, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, 
    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
    GLX_OML_swap_method, GLX_SGIS_multisample, GLX_SGIX_fbconfig, 
    GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, GLX_SGI_swap_control
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
    GLX_ARB_create_context, GLX_ARB_create_context_profile, 
    GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float, 
    GLX_ARB_framebuffer_sRGB, GLX_ARB_get_proc_address, GLX_ARB_multisample, 
    GLX_EXT_buffer_age, GLX_EXT_create_context_es2_profile, 
    GLX_EXT_fbconfig_packed_float, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, 
    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, 
    GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control, 
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 
    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read, 
    GLX_SGI_swap_control, GLX_SGI_video_sync
GLX version: 1.4
GLX extensions:
    GLX_ARB_create_context, GLX_ARB_create_context_profile, 
    GLX_ARB_fbconfig_float, GLX_ARB_framebuffer_sRGB, 
    GLX_ARB_get_proc_address, GLX_ARB_multisample, 
    GLX_EXT_create_context_es2_profile, GLX_EXT_framebuffer_sRGB, 
    GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, 
    GLX_EXT_visual_rating, GLX_INTEL_swap_event, GLX_MESA_copy_sub_buffer, 
    GLX_MESA_multithread_makecurrent, GLX_MESA_query_renderer, 
    GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control, 
    GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, 
    GLX_SGIX_visual_select_group, GLX_SGI_make_current_read,                                                                         
    GLX_SGI_swap_control, GLX_SGI_video_sync                
....

Nothing new I suppose.

Fabioamd87 commented 8 years ago

same error here, 268.44Mb on Radeon 5450 with 512Mb

Tele42 commented 8 years ago

As noted elsewhere, this appears to be strictly a cosmetic issue, this message does not affect the amount of video memory available to games or reduce performance.

Fabioamd87 commented 8 years ago

thanks

baos780 commented 8 years ago

That was not my experience. I had two ati video cards that should have overpowered the nvidia 970 I replaced them with. Instead I now have smooth graphics at any framerate.

boombatower commented 8 years ago

A lot more variables than just the VRAM. I an see how much VRAM games / steam uses and it's more than it detects. Still given people may have that impressions...these are the polish things that make people feel like they are using something solid.

DanielPower commented 8 years ago

I'm getting the same message on a HD 6950 with Catalyst 15.302 on Linux Mint 17.3 The card shows 1024mb vram in Catalyst Control Center, but Steam detects only 260

jyrkimanboy commented 8 years ago

I experience this too, and it does have an effect on performance. I have amd r9 390 wth 8Gb, and steam detects 256Mb. The rest: amd fx8350, 16Gb ram, asus crosshair v formula z. Linux mint 17.3 cinnamon, driver fglrx 15.302. I'm (maybe because of this) unable to set the resolution to my native 1440p, and the game then runs at a lower resolution, plus the steam big picture is partially outside of my screen, unaccessible. The game, cities-skylines, runs at 14 fps. This is too low for the hardware i have.

DePingus commented 8 years ago

Did we ever get a fix for this? I get this warning in Big Picture and I get very noticeable input lag just navigating the Big Picture menus using the Steam Link to stream from a Linux host. This host is running Fedora 23 with an AMD R9 270 on Mesa 11.1.0. If I boot the same machine into Windows10 the lag goes away.

stevethepocket commented 8 years ago

I still get the message, even with my new card that the System Information dialog correctly identifies as having 2GB (in Windows it says I have -2GB, which is amusing), but performance doesn't seem laggy at all so I have no idea what's up.

DanielPower commented 8 years ago

I'm also getting the message on my R9 270X, regardless of what driver I use. I've used various versions of Catalyst fglrx, Mesa 11.2, and Mesa 11.3-git.

No performance issues, but some games prevent me from choosing high texture settings, because they think I don't have enough VRAM.

boombatower commented 7 years ago

An interest note, while the issue still persists in big picture the steam system information now shows the correct value:

 Primary VRAM: 6144 MB

Perhaps copy/paste or share code? :-)

For kicks, much update software since original posting:

Distro: openSUSE Tumbleweed [20160913]
Kernel version: 4.7.3-1-default
OpenGL version string: 3.0 Mesa 12.0.2
OpenGL renderer string: Gallium 0.4 on AMD TAHITI (DRM 2.45.0 / 4.7.3-1-default, LLVM 3.8.0)
OpenGL core profile version string: 4.1 (Core Profile) Mesa 12.0.2
Xorg version : 7.6_1.18.4-1.2
xf86-video-ati version : 7.7.0-1.3
DRI3 enabled
Hardware: Radeon HD 7970 ghz
kisak-valve commented 7 years ago

This issue should now be resolved.

First, in the kernel this was resolved in linux 3.17, and now in ~mesa git~ EDIT: mesa commit is a fix to scaling a GALLIUM_HUD graph and is unrelated. Waiting for confirmation in a point release of mesa before closing.

Note: This issue should be strictly cosmetic and general performance is not expected to significantly change.

kisak-valve commented 7 years ago

Closing as this should work with mesa with any kernel 3.17 or newer, fglrx is deprecated, and there are no reports of an issue with amdgpu.