Summary: | Very low FPS when video memory is full (GART & ram <-> vram swapping) | ||
---|---|---|---|
Product: | Mesa | Reporter: | MirceaKitsune <sonichedgehog_hyperblast00> |
Component: | Drivers/Gallium/r600 | Assignee: | Default DRI bug account <dri-devel> |
Status: | RESOLVED MOVED | QA Contact: | |
Severity: | major | ||
Priority: | medium | CC: | cand, pdewacht, sonichedgehog_hyperblast00 |
Version: | git | ||
Hardware: | All | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
MirceaKitsune
2013-07-05 23:31:22 UTC
I wonder if you could send me memory traces from such cases? Instructions: http://www.phoronix.com/scan.php?page=news_item&px=MTU2Nzk First of all, I should note that this has gotten a LOT better since Mesa 9.2. Whereas in Mesa 8 Xonotic would barely run on maps with large textures, I'm now able to run it almost perfectly with maximum details! It still lags in some areas however, and I need to use texture compression to reduce memory use as much as possible. As for that link: First of all, thank you for looking into the vram issues... it's comforting to see someone being to the point about it and willing to tackle the problem. I'll gladly help if I can, and if the fixes you make will go into Mesa and the Radeon driver. However, I can't do anything that requires getting unstable / unofficial system packages, or hacking into the system and drivers... as I can't risk breaking my system and usually fear going too far. I use openSUSE (13.1 currently) and only the stable system packages provided by it in the official repositories. Mesa 9.2.3, Xorg-X11 7.6, xf86-video-ati 7.2. Will the test work with these? No, I'm afraid you need git + patches to test. You can build a local mesa and test it without installing, that way your system is not at risk. ./configure --etc etc && make export LD_LIBRARY_PATH=lib export LIBGL_DRIVERS_PATH=lib/gallium # now everything in this shell will use the new driver glxinfo # check the output xonotic --etc-etc Oh... so I can build Mesa in any local folder I want, then launch the game's binary with an URL specifying where to load it from? Without having to boot with special parameters or making permanent system changes? In that case I might be able to test. Yes, no boot params or system changes needed. Alright. After a lot of work, I managed to get Mesa to compile from GIT, together with the libdrm from latest GIT. However, I'm barely able to test anything with it, as any game I open crashes. I tried with 3 projects, and they all crash the moment any 3D is to be rendered. There was however a very simple game that would run, although it uses very small textures so there's barely anything to test. If you know a simple application that can use a lot of vram and simulate the transfer, please point it out. Let's fix your crashes first. Can you get a backtrace from one? You might want to come to #dri-devel on Freenode to debug this (I'm cand there). I spoke with Lauri on IRC and we got it working. If anyone else has an use for the results, this is the compressed log file, containing memory usage statistics useful to debug the lag: http://www.sendspace.com/file/pjur0t Taken with Xonotic, 1680 x 1050 full screen. All effects set to maximum, compression disabled, and using the GIT version of Xonotic (therefore original uncompressed high-res textures, mostly tga). I played on the map Solarium with 5 bots at maximum skill level, for about 4 minutes. (In reply to comment #1) > I wonder if you could send me memory traces from such cases? > > Instructions: http://www.phoronix.com/scan.php?page=news_item&px=MTU2Nzk Hello Lauri, I read all about this and your thesis on phoronix last night ;-) But I couldn't get the patch set (compare) from your stats6, tree. I do not need a complete next Mesa git tree. How can I check out only the 12 patches for my Mesa git tree? Do I only have to checkout stats6 in my tree? I'll do some logs for you on my RV730 AGP (1 GB) with Celestia, Blender, FreeCAD,... (In reply to comment #9) What I did was to simply checkout the stats6 branch and compile it. GIT clone the repository, then create a local branch and pull stats6 into it. After that compile, enable the debug flag, and run the application through the new version of Mesa. When you have my mesa repo cloned, you can output a complete patch with "git diff master..stats6", which you can then apply in other trees. But be aware that it might not apply to old versions, being against git master. -- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/446. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.